Welcome to Ucancam Knowledge Base
Category
< All Theme
Print

Ucancam Post Processor

The Post Processor is a programme which converts the tool path in some standard neutral format into the format requried by a specific machine control system. For example the G code format supported wordwide by many control systems and PLT3D suported by Roland machine.

Because the wide range of control system on the market, the majority of controls have simple formatting requirments. And therefore UCancam supply a configurable post  processor which can be used by customers or agents to create a post proceesor file to support their controls.This configurable post proceesor use an unicode ASCII configration file to specify the output format required.


        Command:

MenuToolpath > Post Set


An example of a configuration file is shown on the below:

////////////////////////////

FORMAT <X|X%1.3f |1.0>

FORMAT <Y|Y%1.3f |1.0>

FORMAT <Z|Z%1.3f |1.0>

FORMAT <S|S%d |1>

FORMAT <F|F%d |1>

////////////////////////////

FILE_EXTENSION <nc>

UNITS <MM>

////////////////////////////

PROG_HEAD <G90G17G21>

TOOLCHANGE <M06 T[TN]>

PROG_TAIL <M30>

Briefly, the entries in configuration flie fall into four main categories which can be described as below

1.   Global Statements

These determine the file extensions, whether the output is in mm or inches.

Line numbering information and formattong for numeric fileds

2.   Head of Pogramme

This section deals with line that must be output at the head of every programme.This information usually has the programme name, command for switching on the spindle etc.

for example:

PROG_HEAD <%:[DATE]:[TIME]>

PROG_HEAD <G90G17G21>

The word suffix “[  ]” is variable.

3.   Tail of Pogramme

This section deals with line that must be output at the tailof every programme. This information usually has the programme name, command for switching off the spindle etc, moving the tool back to the home position.

for example :

PROG_TAIL <M30>

       PROG_TAIL <%>

4.   TOOLCHANGE

If the machine tool is equiped with an automatic toolchanger, or user wants to allow manual tool changes through an output file.this statement can be used to ouput the appropriate commans.

For example:

TOOLCHANGE <M05>

TOOLCHANGE <M06 T[TN]>

(TN:  current tool number)

The schema of configuration file is : KEY WORD <description/value>

First word in the line is key word that is defined by Ucancam like as UNITS.

These in the brackets contain the description for command or values. For example : UNITS <MM>. To define the output is in milimeter.

The key word in Ucancam include two type:the one is to deinfe the commands.The other is variable that is referenced in post processor file with prefix “[ ]”

The following is the key word for commands

KEY WORD

Specification

FORMAT

to define the formatting fornumeric fields

PROG_HEAD

head of programme

PROG_TAIL

tail of programme

TOOLCHANGE

tool change command

G00_DEF

commamd name for rapid moving

G01_DEF

commamd name for line cutting

G02_DEF

commamd name for CW arc cutting

G03_DEF

commamd name for CCW arc cutting

G04_DEF

commamd name for pause

DWELL_DEF

commamds for pause statement

FIRST_ G00_MOVE_DEF

Commands for the first rapid move

G00_MOVE_DEF

Commands for rapid moves

FIRST_ G01_MOVE_DEF

Commands for the first feed rate move

G01_MOVE_DEF

Commands for feed rate moves

FIRST_ G02_MOVE_DEF

Commands for the first clockwise arc move

G02_MOVE_DEF

Commands for clockwise arc moves

FIRST_ G03_MOVE_DEF

Commands for the first counter-clockwise arc move

G03_MOVE_DEF

Commands for counter-clockwise arc moves

G20_DEF

commamd name for inch unit

G21_DEF

commamd name for mm unit

SPN_CW

commamd name for spindle CW rotation

FILE_EXTENSION

File extension name

UNITS

Unit for length

XYZ_SEQ

Sequence for XYZ

LINE_NUM_START

The start line number

LINE_NUM_INCREMENT

Line number increment

LINE_NUM_MAXIMUM

Maximum value for line number

OMIT_SAME_GCODE

Omit the same G code

OMIT_SAME_XYZ

Omit the same XYZ value

RAPID_ XY_Z

Sequency for rapid moving

ARC_TO_LINES

Convert arc to lines

END_OF_LINE

The string at the end of line

The following is the key word for variable

KEY WORD

Specification

DATE

Date of create file

TIME

Time of vreate file

FILENAME

File name

TOOLPATHNAME

Toolpath type name

XSIZE

Toolpath size for x axis

YSIZE

Toolpath size for y axis

ZSIZE

Toolpath size for z axis

XMIN

Toolpath minimum value for x axis

YMIN

Toolpath minimum value for y axis

ZMIN

Toolpath minimum value for z axis

XMAX

Toolpath maximum value for x axis

YMAX

Toolpath maximum value for y axis

ZMAX

Toolpath maximum value for z axis

WK_XSIZE

Length of material in X.

WK_YSIZE

Length of material in Y.

WK_XMIN

Minimum value of material in X.

WK_YMIN

Minimum value of material in Y.

WK_XMAX

Maximum value of material in X.

WK_YMAX

Maximum value of material in Y.

X

Current x position

Y

Current y position

Z

Current z position

LN

Line number

I

Arc centre in X Axis (relative to start X,Y position).

J

Arc centre in Y Axis (relative to start X,Y position).

K

Arc centre in Z Axis (relative to start X,Y position).

IA

Arc centre in X Axis (absolute coordinates).

JA

Arc centre in Y Axis (absolute coordinates).

KA

Arc centre in Z Axis (absolute coordinates).

IE

Arc centre in X Axis (relative to end X,Y position).

JE

Arc centre in Y Axis (relative to end X,Y position).

KE

Arc centre in Z Axis (relative to end X,Y position).

TN

Tool number

TOOL_DESC

Tool description

FC

Feedrate for cutting

FR

Feedrate for rapid moving

FP

Feedrate for plunge

SPN_SPEED

Spindle rotation speed

SAFE_ZPOS

Safe height

Output firmat for Variable in UCancam include :

FORMAT <N|N%d >

FORMAT <X|X%1.3f |1.0>

FORMAT <Y|Y%1.3f |1.0>

FORMAT <Z|Z%1.3f |1.0>

FORMAT <S|S%d |1>

FORMAT <F|F%d |1>

FORMAT <I|I%1.3f |1.0>

FORMAT <J|J%1.3f |1.0>

FORMAT <K|K%1.3f |1.0>

FORMAT <R|R%1.3f |1.0>

FORMAT <A|A%1.3f |1.0>

The field in brackets are separated as three parts by character “|” .eg:

FORMAT <X|X%1.3f |1.0>, the first part is Key character of Ucancam , “X” mean the current format is for x coordinate. Ucancam key characters of format include : N  X Y  Z  S F  I  J K  R  A.

N:  line number.

X:  x cordinate

Y:  y cordinate

Z:  z cordinate

S:  spindle rotation speed

F:  spindle feedrate

I:   arc  x  increment  value

J:   arc  y  increment  value

K:   arc  z  increment  value

R:  arc radius

A;  angle for rotation axis

The second part is the string to print before value when output。 %1.3f is  format string to control the number of decimal places leading zero etc.  “1”  is number that specifies minimum number of characters output. “3” is the precision specification value that specifies maximum number of characters printed for all or part of the output field

5.G00_DEF, G01_DEF,G02_DEF,G03_DEF,G04_DEF,G20_DEF,G21_DEF

Define the command string name that repace for ISO G Code G00 ,G01, G02, G03, G04,G20, G21.

Eg: G00_DEF <G172>

6. Arc command

1)ARC_TO_LINES <1>

Possible value: 1 or 0

Convert the arc to lines.

Default: 0

2)The format of arc output, Expressed as R.

FORMAT <R|R%1.3f |1.0>

3)The format of arc output, Expressed as I、J、K(Arc centre in X Axis, relative to start X,Y position).

FORMAT <I|I%1.3f |1.0>

FORMAT <J|J%1.3f |1.0>

FORMAT <K|K%1.3f |1.0>

4)The format of arc output, Expressed as IA、JA、KA(absolute coordinates)

5)The format of arc output, Expressed as IE、JE、KE(Arc centre in X Axis, relative to end X,Y position).

Default: R format

7. FIRST_ G00_MOVE_DEF

Commands output for first rapid move.

Commands that are output when the very first rapid move is made. A Section not used for most posts, but useful if the very first rapid move, needs to output different information to subsequent rapid moves.

This section is sometimes required for HPGL variants

G00_MOVE_DEF

Commands output for rapid moves.

Commands that are output when rapid moves are required.

8.FIRST_G01_MOVE_DEF

Commands output for first feed rate moves.

This section is commonly used where controllers require that the Feed Rate is set at the first feed move, this rate would then be used for subsequent cut moves.

G01_MOVE_DEF

Commands output for feed rate moves

Used to output information required at every move, or all feed moves except for the First Feed Move, if a FIRST_FEED_MOVE section is present within the post processor

9.FIRST_G02_MOVE_DEF

Commands output for the first clockwise arc move

Similar to the FIRST_G01_MOVE_DEF section, but for clockwise arc segments. This section is commonly used where controllers require that the Feed Rate is set for the first arc segment, this rate would then be used for subsequent arc moves in the same direction.

G02_MOVE_DEF

Commands output for clockwise arc moves.

Similar to the G01_MOVE_DEF section, but for clockwise arc segments.

10.FIRST_G03_MOVE_DEF

Commands output for the first counter-clockwise arc move.

Similar to the FIRST_G01_MOVE_DEF section, but for counter-clockwise arc segments. This section is commonly used where controllers require that the Feed Rate is set for the first arc segment, this rate would then be used for subsequent arc moves in the same direction.

G03_MOVE_DEF

Commands output for counter-clockwise arc moves.

Similar to the G01_MOVE_DEF section, but for counter-clockwise arc segments.

11. DWELL_DEF

Commamds for pause statement

If not set this statement, Default:G04

Eg: G04 X2.000  the pause time when drilling at the bottom is 2 seconds.

12.line numbering

FORMAT <N|N%d >

There are two meanings:

(1) output the line number.if not set this statement, ucancam do not output line number.

(2)  Set the format of line number

LINE_NUM_START <1>

Start line number

Default: 1

LINE_NUM_INCREMENT <1>

Increment line number

Default: 1

13.UNITS

Possible value: MM or INCH

MM: All position in mm, feed in mm/min

INCH: All position in inches, feed in inches/min

14.FILE_EXTENSION

Defines the file extension that is used for files created with toolpath output.

15.Rotary_AXIS

This is used only in post processor which are used to drive a machine using rotary axis.

Possible value:  X or Y

Either the X oy Y coordinate is mapped to rotary axis.

If this staement is present , Ucancam will display the dialog which show the Diameter of rotary axis, the default value for diameter is assume that complete the length of toolpath along the axis being wrapped is the circumference of the cylinder.

16.OMIT_SAME_GCODE

Possible value: 1 or 0

Omit the following same G code in output file .

Default: 0.

Eg:  G01 x010.000 Y 20.000 Z0.000

      G01 x010.000 Y 20.000 Z-5.000

if set the statement : OMIT_SAME_GCODE <1>

the ouput  is :

G01 x010.000 Y 20.000 Z0.000

x010.000 Y 20.000 Z-5.000

if set the statement : OMIT_SAME_GCODE <1>

       the ouput  is :

G01 x010.000 Y 20.000 Z0.000

x010.000 Y 20.000 Z-5.000

17.OMIT_SAME_XYZ

OMIT_SAME_XYZ <1>

Possible value:  1 or 0.

Omit the folowing same xyz coordinate.

Default: 0.

Eg:  G01 x010.000 Y 20.000 Z0.000

       G01 x010.000 Y 20.000 Z-5.000

if set the statement : OMIT_SAME_XYZ <1>

the ouput  is :

G01 x010.000 Y 20.000 Z0.000

G01 Z-5.000

18.RAPID_XY_Z

Possible value: 1 or 0

If set the statement :  RAPID_XY_Z <1>  , the rapid move of tool from  PointA(0,0,10) to point pointB(100,50,0) isseperated I n two part, firstly from pointA(0,0,10) to midpoint(100,50,10), second ly from midpoint(100,50,10) to pointB(100,50,0).

19.XYZ_SEQ

Possible value:  XYZ, XZY, YXZ, YZX, ZXY, ZYX.

This statement specifies the sequence of point coordinate is printed out .

20.END_OF_LINE

      This statement specifies the character ouput at the end of line.

      Default: none.

21.XSIZE、YSIZE、ZSIZE

The size of The toolpath in x axis, y axis, z axis.

22.XMIN、YMIN、ZMIN、XMAX、YMAX、ZMAX

The minimum and maximun value of the toolpath

23.X、Y、Z

Current tool point coordiant

24.SPN_SPEED

Spindle rotation speed.

25.FC

Tool feedrate for cutting

26.FR

Tool feedrate for rapid moving.

27.SAFE_ZPOS

Safe height.


The following is example of pots processor file:

Eg1:general CNC

//line number

//FORMAT <N|N%d >

///////////////////

FORMAT <X|X%1.3f >

FORMAT <Y|Y%1.3f |1.0>

FORMAT <Z|Z%1.3f |1.0>

FORMAT <S|S%d |1>

FORMAT <F|F%d |1>

//////////////////////////////

UNITS <MM>

/////////////////////////////////

FILE_EXTENSION <nc>

/////////////////////////////////

LINE_NUM_START <1>

LINE_NUM_INCREMENT <1>

/////////////////////////////////

PROG_HEAD <G90G17G21>

TOOLCHANGE <M05>

TOOLCHANGE <M06 T[TN]>

PROG_TAIL <M30>


Eg2:HP_PLT3D

//precision = 0.025,   1/0.025=40

FORMAT <X|%1.0f, |40.0>

FORMAT <Y|%1.0f, |40.0>

FORMAT <Z|%1.0f |40.0>

///////////////////////////////////

UNITS <MM>

//convert arc into lines

ARC_TO_LINES  <1>

RAPID_XY_Z  <0>

END_OF_LINE   <;>

///////////////////////////////////

FILE_EXTENSION <plt>

//////////////////////////////////

PROG_HEAD <IN;>

PROG_HEAD <SP1>

G00_DEF <PU>

G01_DEF <PD>

TOOLCHANGE <SP[TN]>

PROG_TAIL <SP0>