System parameters

Overview CNC functionality of TwinCAT CNC, of June 2011

If there are general statements as CPU or memory, the settings can be altered based upon application specific demand or product definitions by Beckhoff.

1

Machining Technologies

TwinCAT CNC

1.1

Turning

1.2

Milling

1.3

Drilling

1.4

Grinding

1.5

Handling

1.6

Special machines (plasma, laser, gas cutting, bending etc.)

2

Axes Control

TwinCAT CNC

2.1

Maximum number of axes

64

2.2

Standard number of axes

8

2.3

Maximum number of axes / spindles per channel

32

2.4

Number of independent channels

12

2.5

Maximum number of interpolated axes per channel

32

2.6

Maximum number of controlled spindles per channel

6

2.7

Maximum number of independent axes in channel

32

2.8

SPS controlled spindles per channel

6

2.9

Axes designations in channel

Each string beginning with X, Y, Z, U, V, W, Q, A, B, C

2.10

Maximum number of synchronous spindles per channel

 

2.11

Number of axis coupling groups

7

2.12

Number of programmable axes pairs inside a coupling group

15

2.13

Maximum number of Gantry-couplings

16 (16 master, 1 slave each)

2.14

Maximum number of axes inside a Gantry-coupling

32 (1 master, 31 slaves)

2.15

Programmable movement area limitation (Software limit switch)

Yes

2.16

Axes exchanges between channels

32

2.17

Programming precision

0,0001 mm

2.18

Resolution of measurement signals

0,0001 mm

2.19

Smallest programmable Increment

0,0001 mm

2.20

Multi positioning systems

 

2.21

Switch of programming unit: inch / metric

G70/G71

2.22

Backlash compensation

2.23

Axis compensation, direction dependent (double sided lead screw error compensation)

1500 points each

2.24

Cross compensation

Overhang compensation

1 axis, 1000 points

2.25

Axis homing with limit switch and zero impulse

2.26

Velocity feedforward control

2.27

Acceleration feedforward control

2.28

Measurement

2.29

Axes positions to PLC

2.30

Axis filters with parameters

2.31

Temperature compensation

2.32

Plain compensation

2 axes, 100 points

2.33

Jerk feedforward control

2.34

Traversing range linear axis

-214m - +214m

2.35

Traversing range rotary axis

-594 - +594 (roundings)

2.36

Traversing range spindle

Unlimited

2.37

Circle radius

0 – 106m

2.38

Axis specific transformation

Connection rod, E-function

2.39

MAX_CROSSCOMP_CYC – number of cycles for coupling cross compensation (application specific)

20

3

Interpolator Functions

TwinCAT CNC

3.1

Smallest interpolation value

0,0001 mm

3.2

Rapid traverse

G0

3.3

Linear interpolation

G1

3.4

Exact stop

G60

3.5

Circular interpolation

G2/G3

3.6

Center point programming absolute / incremental

G161/G162

3.7

Radius programming

3.8

Helical interpolation

G2/G3

3.9

Feedforward control/ position lag free movement

G135/G137

3.10

Percental weighting of feedforward

G136

3.11

Dwell time

G4

3.12

Face surface machining

#FACE ON/OFF

3.13

Cylinder surface machining

#CYL ON/OFF

3.14

Thread cutting

G33

3.15

Multiple threads

G33

3.16

Tapping

G63

3.17

Tapping without compensation chuck

G63

3.18

Axis clamping

 

3.19

NC-blocks in Look Ahead

70

3.20

Interpolation cycle time configurable

0,5 to 20 ms

3.21

Spline interpolation

AKIMA/BSPLINE

3.22

NC block specific parameters of acceleration profile

#SET SLOPE PROFIL

3.23

Forward-/Backward on path

4

Feed Functions

TwinCAT CNC

4.1

Rapid traverse velocity

0,000001 - 1000 m/min

4.2

Rapid traverse override

4.3

Feed

0,000001 - 1000 m/min

4.4

Revs

0,0002 – 100000 U/min

4.5

Manual mode rapid traverse

0 - 1000 m/min

4.6

Manual mode feed

0 - 1000 m/min

4.7

Axis specific override

4.8

Feed rate per minute

G94

4.9

Rotational feed

G95

4.10

Programming of machining time

G93

4.11

Block transition behavior

G8/G9

4.12

Feed hold

4.13

Acceleration ramp for rapid traverse

4.14

Weighting factors for acceleration ramp

G132/G133

4.15

Constant cutting speed

G96

4.16

Feed adaptation with active tool radius compensation

G10/G11

4.17

Active federate by plc

4.18

Reduced speed by plc-signal

5

5-Axis Functions

TwinCAT CNC

5.1

RTCP (rotation tool center point)

#RTCP ON/OFF

5.2

TLC (tool length compensation)

#TLC ON/OFF

5.3

Tool orientation to (A)CS

#TOOL ORI CS

5.4

Selection of kinematics

#KIN ID

5.5

Definition of work piece coordinate system

#CS ON/OFF

5.6

Definition of fixture adaptive coordinate system

#ACS ON/OFF

5.7

Chaining of coordinate systems

10

5.8

Effector coordinate system

#ECS ON/OFF

5.9

Temporary transition to machine axes coordinate system

#MCS ON/OFF

5.10

Kinematics library

5.11

Manual mode in work piece coordinate system

6

Programming

TwinCAT CNC

6.1

Skip block

/

6.2

Number of NC-programs

Load from von HD / network

6.3

Arbitrary block numbering

6.4

Radius/diameter programming

G51/G52

6.5

Interpolation planes

G17/G18/G19

6.6

-

 

6.7

Rotary axis mode

6.8

Endless moving rotary axis

6.9

Free definable machine coordinate system per channel

G53

6.10

Work piece coordinate system per channel

#CS ON

6.11

Work piece origins per channel

G54 – G59

6.12

Extended work piece origins

90

6.13

Rotation of coordinate system

6.14

Clamp position offsets

150 groups

6.15

Preset

#PSET/#PRESET

6.16

Additional offset

G92

6.17

Number of additive coordinate systems

10

6.18

Insertion of chamfer and radii

G301/G302

6.19

Number of P-parameters per channel

1000

6.20

Dimensions of parameter arrays

4

6.21

Global variables V.P (program local)

1000

6.22

Global variables V.S (static)

400

6.23

Local variables V.L (sub program local)

50

6.24

Number of subprogram levels

20

6.25

Number of user macros per channel

100

6.26

Mirroring

G20/G21/G22/G23

6.27

Absolute / incremental

G90/G91

6.28

Process time calculation

 

6.29

Mathematical functions

+, -, *, /, **, MOD, ABS, SQR, SQRT, EXP, LN, DEXP, &, |, ^, INV, LN, ==, !=, >=, <=, <,

TRUE, FALSE, SIN, COS, TAN, ASIN, ACOS, ATAN, LOG, INT, FRACT, ROUND

6.30

Time measurement

#TIMER

6.31

Control blocks

BREAK, CONTINUE, REPEAT, DO, FOR, GOTO, IF; ELSE; ENDIF, SWITCH, CASE, DEFAULT, ENDSWITCH, WHILE, ENDWHILE

6.32

Programming of axis designations

6.33

Messages from the NC program

#MSG

6.34

Inter-channel synchronization with parameter passing

#SIGNAL/WAIT

6.35

Fixture adaptive CS

#ACS ON/OFF

6.36

Definition and activation of a work piece coordinate system

#CS ON/OFF

6.37

User macros: Max. string length of macro name

30

6.38

User macros: Max. string length of NC-code

80

6.39

Overwrite of user macros

6.40

Nesting levels of user macros

14

6.41

Number of expression labels

200

6.42

Number of string labels

200

6.43

Max. length of string labels

30

6.44

Only „P“ for parameters

6.45

Max. number of signal parameters during inter channel synchronization

12

6.46

Max. string length of axis name

16

6.47

Workspace monitoring

20 workspaces, each with up to 20 points

6.48

Change of absolute/incremental inside NC block

6.49

Axis independent cycle programming

6.50

User macro: Initialisation by file

50

6.51

Use Multi-Head-Tool (Fitting Cycle)

7

Operate

TwinCAT CNC

7.1

MDI-mode per channel

7.2

Block search

7.3

Axis homing

7.4

Single step mode

7.5

Manual mode

7.6

Absolute position detection

7.7

Reference point offset

7.8

Hand wheel superimposition per channel

7.9

Hand wheel superimposition per axis

7.10

Hand wheel sensitivity

7.11

Hand wheel interruption

7.12

Jog mode

7.13

Tipp mode

7.14

Programmable stop

M0

7.15

Optional stop

M1

8

Spindle and Auxiliary Functions

TwinCAT CNC

8.1

Configurable M-functions per channel

M0 – M999

8.2

Configurable H-functions per channel

H0 – H999

8.3

Maximum number of M-/H-functions per NC-block

20

8.4

Constant cutting speed per channel

8.5

Tool specific rev limit per spindle

8.6

Tool specific acceleration limit per spindle

8.7

Spindle synchronization

8.8

Multi spindle control

6

8.9

Spindle interpolation (C-axis)

8.10

Block global synchronization of M-H-functions on NC-command

8.11

Block global synchronization of M-H-functions on G1

8.12

Automatic determination of gear step

M40 – M45

9

Tool Functions

TwinCAT CNC

9.1

Number of internal tool places per channel

200

9.2

Connection to external tool management

9.3

Tool number

T0 to T2000000000

9.4

Sister tool and variants

9.5

Support of service live calculation

9.6

Programmable tool data

9.7

Fee tool specific parameters

60

9.8

Tool specific minimal- and maximum revs

9.9

Tool specific acceleration

9.10

Tool specific kinematics

9.11

Tool offsets in all axes

9.12

Tool specific kinematics parameters

9.13

Tool length correction

D

9.14

Tool radius correction

G40/G41/G42

9.15

Transition elements chamfer / radius

9.16

Direct and indirect tool selection

9.17

Cutting edge radius compensation

9.18

Number of sister tools and variants

3

9.19

Online tool wear correction

9.20

Selection modes of tool radius correction

G05 G138/G138 G237/G238

10

PLC-Functions

TwinCAT CNC

10.1

Configurable CNC/PLC-variables and arrays of variables

215 per channel

(Build 15xx: 225 per channel)

10.2

M-Code look ahead

Distance / time

10.3.

Structure definition of CNC/PLC-variables

30 per channel

10.4

CNC/PLC-variables: elements per structure

50 per channel

10.5

CNC/PLC-variables: For variable structures reserved structure nodes

600 per channel

10.6

Extended string length of CNC/PLC-variables

127 characters

11

Further system parameters

TwinCAT CNC

11.1

Maximum axis feed

1000 m/s

11.2

Maximum axis acceleration

1000 m/s2

11.3

Minimum ramp time

0 s

11.4

Maximum ramp time

100 s

11.5

Maximum override

2000 ‰

Conformity comparison between DIN-ISO programming and
TwinCAT CNC programming language syntax

The comparison is based on the DIN 66025 form sheets Part 1 (latest issue of Jan.1983) and Part 2 (latest issue of Sept.1988):

Table: Coding of preparatory functions G

DIN/ISO Code

Description

TwinCat Code

Conformity check

1

G00

Linear interpolation at high speed

G00

in conformity

2

G01

Linear interpolation at programmed feed rate

G01

in conformity

3

G02

Clockwise circular interpolation at programmed feed rate

G02

in conformity

4

G03

Counterclockwise circular interpolation at programmed feed rate

G03

in conformity

5

G04

Programmable dwell

G04

in conformity

6

G05

free

G05

Direct tangential selection/deselection of tool radius compensation

7

G06

Spline curve execution command

G151

in conformity

8

G07

free

not assigned

 

9

G08

Acceleration at the block beginning

G08

in conformity

10

G09

Deceleration at the block end

G09

in conformity

11

G10

free

G10

Feedrate constant for tool radius compensation

12

G11

free

G11

Feedrate adapted for tool radius compensation

13

G12

free

G12

Deselection of corner deceleration

14

G13

free

G13

Selection of corner deceleration

15

G14

free

not assigned

 

16

G15

free

not assigned

 

17

G16

free

not assigned

 

18

G17

Selecting the working plane XY

G17

in conformity

19

G18

Selecting the working plane ZX

G18

in conformity

20

G19

Selecting the working plane YZ

G19

in conformity

21

G20

free

G20

Deselection of mirroring

22

G21

free

G21

Mirroring of programmed path on the Y-axis

23

G22

free

G22

Mirroring of programmed path on the X-axis

24

G23

free

G23

Superimposing of G21 and G22

25

G24

free

not assigned

 

26

G25

free

G25

Linear transitions for WRK

27

G26

free

G26

Circular transitions for WRK

28

G27

free

not assigned

 

29

G28

free

not assigned

 

30

G29

free

not assigned

 

31

G30

free

not assigned

 

32

G31

free

not assigned

 

33

G32

free

not assigned

 

34

G33

Thread cutting, uniform lead

G33

in conformity

35

G34

Thread cutting, uniform increasing lead

not assigned

not realised

36

G35

Thread cutting, uniform decreasing lead

not assigned

not realised

37

G36

free

not assigned

 

38

G37

free

not assigned

 

39

G38

free

not assigned

 

40

G39

free

not assigned

 

41

G40

Deactive tool radius compensation

G40

in conformity

42

G41

Activate tool radius compensation left of contour

G41

in conformity

43

G42

Activate tool radius compensation right of contour

G42

in conformity

44

G43

free

not assigned

 

45

G44

free

not assigned

 

46

G45

free

not assigned

 

47

G46

free

not assigned

 

48

G47

free

not assigned

 

49

G48

free

not assigned

 

50

G49

free

not assigned

 

51

G50

free

not assigned

 

52

G51

free

G51

Selection of diameter programming

53

G52

free

G52

Deselection of diameter programming

54

G53

Cancellation of zero offsets

G53

in conformity

55

G54

Enabling zero offsets 1

G54

in conformity

56

G55

Enabling zero offsets 2

G55

in conformity

57

G56

Enabling zero offsets 3

G56

in conformity

58

G57

Enabling zero offsets 4

G57

in conformity

59

G58

Enabling zero offsets 5

G58

in conformity

60

G59

Enabling zero offsets 6

G59

in conformity

61

G60

free

G60

Exact stop (Deceleration at end of block before continuation on next block)

62

G61

free

G61

Selection of polynom contouring

63

G62

free

not assigned

 

64

G63

Tapping

G63

in conformity

65

G64

free

not assigned

 

66

G65

free

not assigned

 

67

G66

free

not assigned

 

68

G67

free

not assigned

 

69

G68

free

not assigned

 

70

G69

free

not assigned

 

71

G70

Inch data input

G70

in conformity

72

G71

Metric data input

G71

in conformity

73

G72

free

not assigned

 

74

G73

free

not assigned

 

75

G74

Homing

G74

in conformity

76

G75

free

not assigned

 

77

G76

free

not assigned

 

78

G77

free

not assigned

 

79

G78

free

not assigned

 

80

G79

free

not assigned

 

81

G80

Machining cycle cancel

G80 or not assigned

Implicit sub programm call (if name is configured)

82

G81

Center drilling cycle

G81 or not assigned

Implicit sub programm call (if name is configured)

83

G82

Counterboring cycle

G82 or not assigned

Implicit sub programm call (if name is configured)

84

G83

Peck drilling cycle

G83 or not assigned

Implicit sub programm call (if name is configured)

85

G84

(Rigid)Tapping cycle

G84 or not assigned

Implicit sub programm call (if name is configured)

86

G85

Boring cycle

G85 or not assigned

Implicit sub programm call (if name is configured)

87

G86

Boring canned cycle with spindle stop at drilling depth

G86 or not assigned

Implicit sub programm call (if name is configured)

88

G87

Drilling canned cycle with chip breaking

G87 or not assigned

Implicit sub programm call (if name is configured)

89

G88

Boring and traverse turning canned cycle

G88 or not assigned

Implicit sub programm call (if name is configured)

90

G89

Boring cycle with dwell in hole bottom

G89 or not assigned

Implicit sub programm call (if name is configured)

91

G90

Programming in absolute dimensions with respect to the program origin

G90

in conformity

92

G91

Programming in incremental dimensions with respect to the start of the block.

G91

in conformity

93

G92

Setting the part program origin

G92

in conformity

94

G93

Inverse time feedrate in 1/min.

G93

Machining time in sec.

95

G94

Feed rate expressed in mm/min, inch/min,deg /min

G94

in conformity

96

G95

Feed rate expressed in mm/revolution, inc/revolution

G95

in conformity

97

G96

Constant cutting speed in m/min

G96

in conformity

98

G97

Spindle speed expressed in revolutions/min

G97

in conformity

99

G98

free

G98

Set negative software limit switch

100

G99

free

G99

Set positive software limit switch

End of DIN/ISO-Definition

Table: Coding of miscellaneous functions M

DIN/ISO Code

Description

TwinCat Code

Conformity check

1

M00

Program stop

M00

in conformity

2

M01

Optional stop

M01

in conformity

3

M02

End of program

M02

in conformity

4

M03

Clockwise spindle rotation (class1-3) or
cutting on (class 4)

M03

in conformity (method of operation is configurable)

5

M04

Counterclockwise spindle rotation (class1-3)
or cutting off (class 4)

M04

in conformity (method of operation is configurable)

6

M05

Spindle stop (class1-3) or free (class 4)

M05

in conformity (method of operation is configurable)

7

M06

Tool change

M6 or not assigned

Implicit sub programm call (if name is configured)

8

M10

Clamp

M10

in conformity

9

M11

Unclamp

M11

in conformity

10

M17

free

M17

End of subroutine

11

M19

Spindle positioning (class1-3) or free (class 4)

M19

in conformity (method of operation is configurable)

12

M29

free

M29

End of subroutine

13

M30

End of program

M30

in conformity

14

M40

Automatic gear switching (class1-3) or free

M40 or not assigned

in conformity

15

M41

Gear step 1 (class1-3) or free

M41 or not assigned

in conformity

16

M42

Gear step 2 (class1-3) or free

M42 or not assigned

in conformity

17

M43

Gear step 3 (class1-3) or free

M43 or not assigned

in conformity

18

M44

Gear step 4 (class1-3) or free

M44 or not assigned

in conformity

19

M45

Gear step 5 (class1-3) or free

M45 or not assigned

in conformity

20

M48

Enable overrides

G166/G167

Selection of path/spindle override 100% (Block local)

21

M49

Disable overrides

not assigned

 

22

M60

Work piece change

not assigned

 

The meanings of all further M-Functions are configurable corresponding to the class specific use defined in DIN/ISO code.

Table: Adress characters and special characters

Requirements

DIN/ISO Code

Description

TwinCat Code

Conformity check

1

A

Rotation around X

A

in conformity

2

B

Rotation around Y

B

in conformity

3

C

Rotation around Z

C

in conformity

4

D

Tool data

D

in conformity (Time of activation of tool offsets is configurable)

5

E

free

not assigned

 

6

F

Path feed

F

in conformity

7

G

Path conditions

G

in conformity

8

H

free

H

Additional technology functions (corr. to M-functions)

9

I

Interpolation parameter for X

I

in conformity

10

J

Interpolation parameter for Y

J

in conformity

11

K

Interpolation parameter for Z

K

in conformity

12

L

free

L/LL

Definition/Call of subroutines

13

M

Additional technology functions

M

in conformity

14

N

Block number

N

in conformity

15

O

free

not assigned

 

16

P

free

P

Parameters

17

Q

free

Q

Free configurabel axis

18

R

free

R

Circle radius or indirect parameter

19

S

Spindel speed

S

in conformity

20

T

Tool selection

T

in conformity

21

U

Movement parallel to X-axis

U

in conformity

22

V

Movement parallel to Y-axis

V

in conformity

23

W

Movement parallel to Z-axis

W

in conformity

24

X

Movement in direction of X-axis

X

in conformity

25

Y

Movement in direction of Y-axis

Y

in conformity

26

Z

Movement in direction of Z-axis

Z

in conformity

27

%

Program beginning

%

in conformity

28

(

Comment start

(

in conformity

29

)

Comment end

)

in conformity

30

+

Plus

+

in conformity

31

-

Minus

-

in conformity

32

.

Decimal point

.

in conformity

33

/

Block skipping

/

in conformity

34

:

Main block, conditional stop of the program reset

:

Marker for definition of an expression label (block number)

35

;

Comment start

;

Comment until block end