cPost V1R6 - AIP Primeca

Transcription

cPost V1R6 - AIP Primeca
cPost V1R6
User Manual
All rights, including those concerning the translation, the reprinting and the reproduction of this
manual or parts thereof are reserved by CENIT AG Systemhaus. No part of this documentation
may be reproduced or processed, copied or disseminated in any form (photocopy, microfilm or
other procedure) using electronic systems, including for the purposes of teaching materials,
without the written approval of CENIT AG Systemhaus.
Status August 2003
Preface
Preface
CENIT - Your competent partner for Manufacturing solutions
CENIT AG Systemhaus has developed into one of the leading software houses and information
technology service providers in Germany as a result of consistent customer orientation and exemplary service.
We provide industrial customers, financial service providers, trading companies and official
bodies with consultation on the introduction of innovative and promising information technologies. In this case, our range of services ranges from the selection of suitable hardware and software and implementation at the customer’s premises to comprehensive services such as
training courses, support or outsourcing.
Since many years developed CENIT standardized or customized fabrication solutions to the integration into the CATIA-environment. These are LaserCUT, a module to the 3D laser preparation and CUT4AXES, a solution to the wire cut EDM.
Furthermore CENIT has been for many years CAA (CATIA application architecture) respectively OSD (original Software Developer) Development partner for Dassault system in the fabrication-background.
cPost
The newest generation of the CENIT Post Processor builders (cPost) is a consistent further development proved in the fabrication industry of the CATIA V4-PPB (Post Processor builders).
Therewith can the Post Processor (PP) without knowledge of a higher programming language
simply and quickly for CATIA V5 and V4 be generated. The Runtime module (cPost Runtime)
required for the carrying out of cPost PP’s is an integral component of the CATIA V5 Manufacturing Infrastructure.
cPost features
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Java based graphical user interface
Simple and clear structured Post Processor parameter and output blocks
Output of complex command sequences without the use of macros in the output blocks (e.g. Tool
change)
Optimal support of CATIA V5
Support of modality
Effective controller for output order by priorities. Thus avoid the output of not permitted command
sequences in one line
Milling of 3-5 simultaneous axes plus additional positioning axis
Support of all prevalent 5-axes kinematic plus vector, Euler and RPY-output
Support of wire EDM
RTCP or pivot mode for 5 axes. The calculation can be separately set for several rotation axis
Output of the feed rate as inverse time
Limit overview
Direct context sensitive online help for all parameters and blocks in the panels
List for tools and origins at the beginning of the Program
Support of sub programs and repeat of part programs
support of all prevalent drill cycles
preselection of tools
2,5D processing for any plane
support of Nurbs
© CENIT AG Systemhaus
cPost Documentation V1R6
Page i
Preface
Macro technology
The available possibilities of the CENIT Post Processor builder are widened by the integrated
macro language. This manner means that user specific processing logics, which are not standard, can be implemented.
•
•
•
•
•
•
•
Basic like macro language
Pre read of any APT command
Direct output of commands in the NC program
Generation of APT sequences in macros, which are treated as a normal APT command in the cPost
Generation of a reportfile at the end of the PP run in an ASCII or HTML format
Access of internal variables
Changes of the PP configuration at runtime
PP Library
Included in the delivery of the cPost, is a large library with standard Post Processors for current
controls and machine kinematics:
•
•
•
•
•
•
•
•
Sinumerik
Heidenhein
Fidia
GE-Fanuc
Mazak
Okuma
NUM
Allen Bradely
Based on a available standard Post Processor can very simply and quickly a customer specific
Post Processor be developed.
Hard- and Software requirements
•
•
•
Windows 98/95
Windows NT/2000/XP
UNIX-Platform
• IBM-AIX
• Sun-Solaris
• HP-UX
• SGI-Irix
• Linux
Page ii
© CENIT AG Systemhaus
cPost Documentation V1R6
Contents
Contents
Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . i
Contents. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iii
1 Installation Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1 Prerequisites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
1.2 Installing cPost . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
1.2.1 Installing cPost on Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
1.2.2 Installing cPost on UNIX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
1.3 Installing FLEXlm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2
1.3.1 Installation on Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2
1.3.2 Installation on AIX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2
1.3.3 Installation on HP-UX. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2
1.3.4 Installation on IRIX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2
1.3.5 Installation on SunOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3
1.4 cPost Licensing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3
1.4.1 License models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3
1.4.2 Getting the Hostid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4
1.4.3 Definition of license file or server . . . . . . . . . . . . . . . . . . . . . . . . . .4
2 cPost Builder User Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2 The Menubar and The Tool bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8
2.2.1 The Menu bar. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8
2.2.2 The Toolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10
2.4 The Parameter Tree. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11
2.5 The Tab Pages. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
2.5.3 Block/Sequence definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
2.5.4 Address definitions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
2.6 Online help section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14
3 Definition of Post Processor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.1 Functional Levels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15
3.2 MCD Output Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15
3.2.1 General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15
3.2.2 Tabulators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18
3.2.3 Priorities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19
3.2.4 Defining the output control in the GUI . . . . . . . . . . . . . . . . . . . . .22
3.3 Format Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23
3.3.1 Format for Numerical Variables . . . . . . . . . . . . . . . . . . . . . . . . . .23
3.3.1.1 Format Definition In the GUI . . . . . . . . . . . . . . . . . . . . .23
3.3.2 Format for Text Variables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24
3.4 Sequence Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25
3.4.3 Pool Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25
3.4.4 Accessing Pool Variables in Sequences . . . . . . . . . . . . . . . . . . .25
3.4.5 Mathematical Functions in Sequences . . . . . . . . . . . . . . . . . . . .25
3.4.6 String functions in Sequences . . . . . . . . . . . . . . . . . . . . . . . . . . .26
3.4.7 Special functions in Sequences . . . . . . . . . . . . . . . . . . . . . . . . . .26
3.4.7.1 CF_MACRO_CALL . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26
3.4.7.2 CF_MOD_SETADR$ . . . . . . . . . . . . . . . . . . . . . . . . . . .27
3.4.8 Special Characters for Sequence Definition . . . . . . . . . . . . . . . .28
© CENIT AG Systemhaus
cPost Documentation V1R6
Page iii
Contents
3.4.9 Sequence definition block in the GUI . . . . . . . . . . . . . . . . . . . . . .29
3.4.10 Examples for sequences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .30
4 Macro Language . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
4.1 Macro Call . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .32
4.1.1 Nesting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .32
4.1.2 Recursive Call . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .32
4.2 General Notes on usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33
4.2.1 Commands. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33
4.2.2 Naming Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33
4.2.3 TRUE and FALSE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33
4.2.4 Operators and Precedence . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33
4.2.5 Macro Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34
4.2.5.1 General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34
4.2.5.2 Variable range. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .34
4.2.5.3 Variable types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .35
4.2.5.4 Arrays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .35
4.3 cPost supported standard BASIC commands . . . . . . . . . . . . . . . . . . .36
4.3.1 Mathematical Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .36
4.3.2 String Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .41
4.3.3 Control structures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .45
4.3.4 Input/Output and Filehandling . . . . . . . . . . . . . . . . . . . . . . . . . . .49
4.3.5 Others . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .51
4.4 Additional cPost Functions (CF_xxx) . . . . . . . . . . . . . . . . . . . . . . . . . .55
4.4.1 cPost Parameter Definition Functions . . . . . . . . . . . . . . . . . . . . .55
4.4.1.1 CF_GETPARADR$ . . . . . . . . . . . . . . . . . . . . . . . . . . . .56
4.4.1.2 CF_GETPARADRTAB . . . . . . . . . . . . . . . . . . . . . . . . . .56
4.4.1.3 CF_GETPARADRP1. . . . . . . . . . . . . . . . . . . . . . . . . . . .57
4.4.1.4 CF_GETPARADRP2. . . . . . . . . . . . . . . . . . . . . . . . . . . .57
4.4.1.5 CF_GETPARADRMOD. . . . . . . . . . . . . . . . . . . . . . . . . .58
4.4.1.6 CF_GETPARADRFMT$ . . . . . . . . . . . . . . . . . . . . . . . . .58
4.4.1.7 CF_GETPARINT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .59
4.4.1.8 CF_GETPARREAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . .59
4.4.1.9 CF_GETPARSTR$ . . . . . . . . . . . . . . . . . . . . . . . . . . . . .60
4.4.1.10 CF_GETPARTDB$ . . . . . . . . . . . . . . . . . . . . . . . . . . . .60
4.4.1.11 CF_SETPARADR$ . . . . . . . . . . . . . . . . . . . . . . . . . . . .61
4.4.1.12 CF_SETPARADRTAB . . . . . . . . . . . . . . . . . . . . . . . . .61
4.4.1.13 CF_SETPARADRP1 . . . . . . . . . . . . . . . . . . . . . . . . . . .62
4.4.1.14 CF_SETPARADRP2 . . . . . . . . . . . . . . . . . . . . . . . . . . .62
4.4.1.15 CF_SETPARADRMOD . . . . . . . . . . . . . . . . . . . . . . . . .63
4.4.1.16 CF_SETPARADRFMT$ . . . . . . . . . . . . . . . . . . . . . . . .63
4.4.1.17 CF_SETPARINT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .64
4.4.1.18 CF_SETPARREAL . . . . . . . . . . . . . . . . . . . . . . . . . . . .64
4.4.1.19 CF_SETPARSTR$ . . . . . . . . . . . . . . . . . . . . . . . . . . . .65
4.4.1.20 CF_SETPARTDB$ . . . . . . . . . . . . . . . . . . . . . . . . . . . .65
4.4.1.21 CF_UPDATEPAR . . . . . . . . . . . . . . . . . . . . . . . . . . . . .66
4.4.2 cPost I/O Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .66
4.4.2.1 CF_APTTXT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .66
4.4.2.2 CF_ERROR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .66
4.4.2.3 CF_FMTVAL$ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .67
Page iv
© CENIT AG Systemhaus
cPost Documentation V1R6
Contents
4.4.2.4 CF_REPTXT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .68
4.4.2.5 CF_MOD_SETADR$ . . . . . . . . . . . . . . . . . . . . . . . . . . .68
4.4.3 cPost Control Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .69
4.4.3.1 CF_GETAPTLINE$ . . . . . . . . . . . . . . . . . . . . . . . . . . . . .69
4.4.3.2 CF_GETNXTCO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .69
4.4.3.3 CF_GETPTYPE$ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .70
4.4.3.4 CF_GETSTATE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .71
4.4.3.5 CF_GETSTYPE$ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .71
4.4.3.6 CF_PUTCO2POOL. . . . . . . . . . . . . . . . . . . . . . . . . . . . .72
4.4.3.7 CF_SETCOMODE$ . . . . . . . . . . . . . . . . . . . . . . . . . . . .72
4.4.3.8 CF_SETSTATE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .73
4.4.3.9 CF_VAR_EXISTS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .74
4.5 Macro examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .74
5 cPost Tab Pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
5.1 HEADER INFORMATION. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .77
5.1.1 PPHEADER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .77
5.1.2 DOCUMENTATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .78
5.2 GLOBAL SETTINGS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .79
5.2.1 NUMBER FORMAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .79
5.2.2 SEQUENCE SETTINGS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .80
5.3 MACHINE TOOL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .81
5.3.1 MACHINE TOOL TYPE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .81
5.3.2 MACHINE LIMITS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .82
5.3.2.1 MACHINE LIMITS FEED . . . . . . . . . . . . . . . . . . . . . . . .82
5.3.2.2 MACHINE LIMITS SPINDLE. . . . . . . . . . . . . . . . . . . . . .83
5.3.2.3 MACHINE LIMITS TRAVEL . . . . . . . . . . . . . . . . . . . . . .84
5.3.2.4 MACHINE TOLERANCES . . . . . . . . . . . . . . . . . . . . . . .85
5.3.3 MACHINE POSITIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .86
5.3.4 MACHINE TOOL TOOLS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .87
5.3.5 MACHINE SPINDLE DATA . . . . . . . . . . . . . . . . . . . . . . . . . . . . .88
5.3.6 MACHINE ROTARY AXIS (MULTAX MACHINES) . . . . . . . . . . .90
5.3.6.1 TWO AXIS ON HEAD . . . . . . . . . . . . . . . . . . . . . . . . . . .90
5.3.6.2 FIRST HEAD AXIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . .91
5.3.6.3 SECOND HEAD AXIS. . . . . . . . . . . . . . . . . . . . . . . . . . .94
5.3.6.4 TWO AXIS ON TABLE . . . . . . . . . . . . . . . . . . . . . . . . . .97
5.3.6.5 FIRST TABLE AXIS . . . . . . . . . . . . . . . . . . . . . . . . . . . .98
5.3.6.6 SECOND TABLE AXIS . . . . . . . . . . . . . . . . . . . . . . . . .101
5.3.6.7 AXIS ON TABLE HEAD . . . . . . . . . . . . . . . . . . . . . . . .104
5.3.6.8 HEAD AXIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .105
5.3.6.9 TABLE AXIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .108
5.4 CONTROLLER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .111
5.4.1 DEFAULT SETTINGS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .111
5.4.1.1 STARTING CONDITIONS . . . . . . . . . . . . . . . . . . . . . .111
5.4.1.2 CONVERSION FACTORS . . . . . . . . . . . . . . . . . . . . . .113
5.4.1.3 ISO SETTINGS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .114
5.4.1.4 REPORT SETTINGS . . . . . . . . . . . . . . . . . . . . . . . . . .115
5.4.2 RECORD NUMBERING. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .116
5.4.3 BEGIN/END COMMANDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . .117
5.4.3.1 GENERAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .117
© CENIT AG Systemhaus
cPost Documentation V1R6
Page v
Contents
5.4.3.2 SEQUENCES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .118
5.4.4 ISO CODE STRUCTURE . . . . . . . . . . . . . . . . . . . . . . . . . . . . .120
5.4.4.1 SUBPROGRAMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . .120
5.4.4.2 REPITITIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .122
5.4.5 M AND G CODES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .124
5.4.5.1 ABS_INCR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .124
5.4.5.2 AUX-, PREFUN. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .125
5.4.5.3 DELAY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .126
5.4.5.4 DWELL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .127
5.4.6 MOTIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .128
5.4.6.1 COMMANDS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .128
5.4.6.2 COMMANDS LATHE . . . . . . . . . . . . . . . . . . . . . . . . . .130
5.4.6.3 SEQUENCES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .132
5.4.6.4 ADVANCED . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .134
5.4.6.4.1 CIR2PT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .134
5.4.6.4.2 NURBS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .135
5.4.6.4.3 HSC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .140
5.4.6.5 COORDINATES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .141
5.4.6.5.1 GENERAL . . . . . . . . . . . . . . . . . . . . . . . . . . . .141
5.4.6.5.2 LATHE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .144
5.4.6.5.3 5AXIS (MULTAX MACHINES) . . . . . . . . . . . . .147
5.4.6.5.4 5AXIS EULER (MULTAX MACHINES) . . . . . .150
5.4.6.5.5 5AXIS ADD (MULTAX MACHINES) . . . . . . . .152
5.4.6.5.6 5X INTERMEDIATE POINTS . . . . . . . . . . . . .153
5.4.6.5.7 OPTIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . .154
5.4.6.5.8 OPTION 5AXIS (MULTAX MACHINES) . . . . .156
5.4.6.5.9 OPTION 5AXIS EULER . . . . . . . . . . . . . . . . .160
5.4.7 MOTIONS - WIRE MACHINES ONLY . . . . . . . . . . . . . . . . . . . .162
5.4.7.1 COMMANDS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .162
5.4.7.2 SEQUENCES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .163
5.4.7.3 COORDINATES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .164
5.4.7.3.1 GENERAL . . . . . . . . . . . . . . . . . . . . . . . . . . . .164
5.4.7.3.2 ANGLE OUTPUT (MULTAX) . . . . . . . . . . . . . .166
5.4.7.3.3 LINEAR OUTPUT (MULTAX) . . . . . . . . . . . . .166
5.4.7.3.4 OPTIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . .167
5.4.8 FEEDRATE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .169
5.4.8.1 GENERAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .169
5.4.8.2 5AXIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .171
5.4.8.3 LATHE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .172
5.4.8.4 OPTIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .174
5.4.9 SPINDLE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .175
5.4.9.1 GENERAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .175
5.4.9.2 LATHE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .178
5.4.9.3 OPTIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .180
5.4.10 COOLANT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .181
5.4.10.1 NORMAL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .181
5.4.10.2 FLOOD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .182
5.4.10.3 MIST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .183
5.4.10.4 TAPKUL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .184
5.4.10.5 THRU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .185
Page vi
© CENIT AG Systemhaus
cPost Documentation V1R6
Contents
5.4.11 TOOL CHANGE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .186
5.4.11.1 SEQUENCES (MILLING MACHINES) . . . . . . . . . . . .186
5.4.11.2 LATHE (TURNING MACHINES) . . . . . . . . . . . . . . . . .187
5.4.11.3 SELECTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .188
5.4.11.4 OPTIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .189
5.4.11.5 LIMITS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .191
5.4.12 TOOL COMPENSATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . .193
5.4.12.1 RADIUS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .193
5.4.12.1.1 GENERAL . . . . . . . . . . . . . . . . . . . . . . . . . . .193
5.4.12.1.2 RIGHT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .194
5.4.12.1.3 LEFT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .195
5.4.12.1.4 OPTIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . .196
5.4.12.2 LENGTH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .197
5.4.12.2.1 X_AXIS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .197
5.4.12.2.2 Y_AXIS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .198
5.4.12.2.3 Z_AXIS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .199
5.4.12.2.4 OPTIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . .200
5.4.12.3 NORMAL TO DRIVE SURFACE. . . . . . . . . . . . . . . . .201
5.4.12.3.1 ADDRESSES . . . . . . . . . . . . . . . . . . . . . . . . .201
5.4.12.3.2 COMMANDS . . . . . . . . . . . . . . . . . . . . . . . . .202
5.4.12.4 NORMAL TO PART SURFACE . . . . . . . . . . . . . . . . .203
5.4.12.4.1 ADDRESSES . . . . . . . . . . . . . . . . . . . . . . . . .203
5.4.12.4.2 COMMANDS . . . . . . . . . . . . . . . . . . . . . . . . .204
5.4.13 OPSKIP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .205
5.4.14 COMMENTS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .206
5.4.15 INSERTS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .208
5.4.16 ORIGINS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .209
5.4.17 PLANES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .211
5.4.17.1 PLANE XY1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .211
5.4.17.2 PLANE XY2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .213
5.4.17.3 PLANE ZX1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .214
5.4.17.4 PLANE ZX2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .215
5.4.17.5 PLANE YZ1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .216
5.4.17.6 PLANE YZ2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .217
5.4.17.7 PLANE ZXL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .218
5.4.17.8 OPTIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .219
5.4.18 SETPLANE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .220
5.4.18.1 COORDINATES . . . . . . . . . . . . . . . . . . . . . . . . . . . . .220
5.4.18.2 OPTIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .221
5.4.18.3 SEQUENCES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .222
5.4.19 POLAR PLANE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .223
5.4.19.1 ADDRESSES FOR POLAR PLANE . . . . . . . . . . . . . .223
5.4.19.2 MOTION COMMANDS . . . . . . . . . . . . . . . . . . . . . . . .224
5.4.19.3 OPTIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .225
5.4.19.4 SEQUENCES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .226
5.4.20 CYCLES. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .227
5.4.21 LATHE SEQUENCES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .232
5.4.21.1 CLAMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .232
5.4.21.2 RETURN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .233
5.4.21.3 SWITCH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .234
© CENIT AG Systemhaus
cPost Documentation V1R6
Page vii
Contents
5.4.22 WIRE SEQUENCES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .235
5.4.22.1 THREAD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .235
5.4.22.2 OPTIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .235
5.4.23 MACROS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .236
6 APT-Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
6.1
6.2
6.3
6.4
ANGTWO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .242
AUXFUN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .243
BARFED . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .244
BEGIN NURBS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .245
6.4.1 Standard 3X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .245
6.4.2 SIEMENS MULTAX NURBS . . . . . . . . . . . . . . . . . . . . . . . . . . .246
6.5 C_VARDEL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .247
6.6 C_VARPUT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .248
6.7 CALSUB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .249
6.8 CHNGRG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .250
6.9 CIR2PT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .252
6.10 CLAMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .253
6.11 CONIC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .254
6.12 COOLNT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .255
6.13 CUTCOM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .256
6.13.1 Length Compensation: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .256
6.13.2 Radius Compensation:. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .257
6.13.3 Tool Compensation along a Vector normal to Drive Surface: .258
6.13.4 Tool Compensation along a Vector normal to Part Surface: . .259
6.13.5 General . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .260
6.14 CUTTER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .261
6.14.1 Milling and powered tools. . . . . . . . . . . . . . . . . . . . . . . . . . . . .261
6.14.2 Turning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .262
6.15 CYCLE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .263
6.16 DEFPLN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .265
6.17 DEFSUB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .266
6.18 DELAY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .267
6.19 DUMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .268
6.20 DWELL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .269
6.21 END NURBS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .270
6.22 ENDSUB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .271
6.23 FEDRAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .272
6.24 FINI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .273
6.25 FROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .274
6.26 GODLTA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .275
6.27 GOHOME . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .276
6.28 GOTO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .277
6.29 IGNORE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .278
6.30 INDIRV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .279
6.31 INSERT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .281
6.32 LOADTL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .282
6.33 MACH_AXIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .283
6.34 MODE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .284
6.34.1 Absolute / Incremental output . . . . . . . . . . . . . . . . . . . . . . . . .284
Page viii
© CENIT AG Systemhaus
cPost Documentation V1R6
Contents
6.35
6.36
6.37
6.38
6.39
6.40
6.41
6.42
6.43
6.44
6.45
6.46
6.47
6.48
6.49
6.50
6.51
6.52
6.53
6.54
6.55
6.56
6.57
6.58
6.34.2 Plane selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .285
6.34.3 Automatic plane selection . . . . . . . . . . . . . . . . . . . . . . . . . . . .286
6.34.4 Automatic SETPLN (Frame) selection . . . . . . . . . . . . . . . . . . .287
6.34.5 Output of rotation angles . . . . . . . . . . . . . . . . . . . . . . . . . . . . .288
6.34.6 Polar planes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .288
MOTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .290
OPSKIP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .291
ORIGIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .292
OUTPUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .294
PARTNO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .295
PITCH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .296
PPRINT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .297
PREFUN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .298
RAPID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .299
REGLTL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .300
RETURN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .301
REWIND . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .302
SELCTL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .303
SEQNO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .304
SETANG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .305
SETPLN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .306
SPINDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .308
STOP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .309
SWITCH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .310
THREAD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .312
TLAXIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .313
TOOLNO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .314
6.56.1 Milling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .314
6.56.2 Turning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .315
TPRINT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .319
WIRE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .320
7 APPENDIX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
7.1 Pool Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .322
7.2 cPost Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .333
7.2.1 Sorted by APT command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .333
7.2.2 Sorted by Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .337
7.3 CF_GETSTATE and CF_SETSTATE Parameters . . . . . . . . . . . . . . . .341
© CENIT AG Systemhaus
cPost Documentation V1R6
Page ix
Contents
Page x
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 1 - Installation Guide
1
Installation Guide
1.1
Prerequisites
Software requirements
• Java Runtime Environment Version 1.3
• FLEXlm 8.3 or higher
Supported platforms
• Microsoft Windows 95/98/NT/2000/XP
• IBM AIX 4.3.3
• Sun Solaris 2.6
• Silicon Graphics Irix 6.5
1.2
Installing cPost
1.2.1
Installing cPost on Windows
• Login as administrator.
• Insert CD-Rom.
• If the autorun functionality fails, start the file setup.exe in the directory
install\cPost\win32 with a doubleclick.
• If necessary, install Java runtime (the installation is described in
install\Java\ README.htm on CD).
If necessary, install FLEXlm (only floating license model, the installation is described in
install\FLEXlm\README.htm on CD).
• Start the cPost Builder.
• Select the location of your FLEXlm license file or the license server.
• Check if the licensing is OK, by selecting the HELP Button, then the Info Button and
then the System Button.
1.2.2
Installing cPost on UNIX
•
•
•
•
Login as root.
Insert CD-Rom and if it is not automounted, mount CD-Rom.
Install cPost by starting install.sh from CD-Rom.
Copy or Link the starting scripts cpostRun.sh and cpostRunGUI.sh from the bin directory to a standard directory like /usr/bin, which is in the users PATH.
• If necessary, install Java runtime (the installation is described in
install/Java/README.htm on CD).
• If necessary, install FLEXlm (only floating license model, the installation is described
in install/FLEXlm/README.htm on CD
• Start the cPost Builder with cpostRun.sh.
• Select the location of your FLEXlm license file or the license server.
• Check if the licensing is OK, by selecting the HELP Button, then the Info Button and
then the System Button.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 1
Chapter 1 - Installation Guide
1.3
Installing FLEXlm
There are 2 license models possible. The software can be licensed with floating or nodelock
licenses. The installation of a license server with the FLEXLm demon is only necessary if cPost
shall be licensed with floating licenses. If cPost is licensed with nodelock licenses, you need no
installation of FLEXlm software.
1.3.1
•
•
•
•
•
•
Login as administrator
Create directory for the FLEXlm binaries, for example: C:\FLEXlm
Copy the files of the directory /CDROM/install/FLEXlm/win32 to the target directory
License server only: start a dos box and change to the FLExlm directory
License server only: Install the FLEXlm demon as a service with the installs.exe
(Command: installs –e C:\FLEXlm\lmgrd.exe)
License server only: Define the settings of the service (start automatic)
(Panel: settings-> services -> select FLEXlm service)
1.3.2
•
•
•
•
•
•
•
•
•
•
Installation on HP-UX
Login as root
Create directory for the FLEXlm binaries, for example: /usr/local/flexlm/HP-UX
(Command: mkdir –p /usr/local/flexlm/HP-UX)
Copy the files of the directory /CDROM/install/FLEXlm/HP-UX to the target directory
(Command: cp /CDROM/install/FLEXlm/HP-UX/* /usr/local/flexlm/HP-UX)
License server only: copy the file /usr/local/flexlm/HP-UX/S85lmgrd_cenit to /sbin/init.d/lmgrd_cenit
This file must be adjusted: there is a change user (su -) in it. You must define a user, which is running your flexlm server. It is recommended to use not the root.
(Command: cp S85lmgrd_cenit /sbin/init.d/lmgrd_cenit)
License server only:
create a soft link: /sbin/init.d/lmgrd_cenit to /sbin/rc2.d/S85lmgrd_cenit
(Command: cd /sbin/rc2.d ; ln -s /sbin/init.d/lmgrd_cenit S85lmgrd_cenit )
1.3.4
•
•
Installation on AIX
Login as root
Create directory for the FLEXlm binaries, for example: /usr/local/flexlm/AIX
(Command: mkdir –p /usr/local/flexlm/AIX)
Copy the files of the directory /CDROM/install/FLEXlm/AIX to the target directory
(Command: cp /CDROM/install/FLEXlm/AIX/* /usr/local/flexlm/AIX)
License server only: Copy the /usr/local/flexlm/AIX /rc.flexlm to /etc.
This file must be adjusted: there is a change user (su -) in it. You must define a user, which is running your flexlm server. It is recommended to use not the root.
License server only: Edit your file /etc/inittab and insert the following line:
flexlm:2:once:/etc/rc.flexlm > /dev/console 2>&1 # Starting lmgrd with each reboot
1.3.3
•
•
Installation on Windows
Installation on IRIX
Login as root
Create directory for the FLEXlm binaries, for example: /usr/local/flexlm/IRIX64
(Command: mkdir –p /usr/local/flexlm/IRIX64)
Copy the files of the directory /CDROM/install/FLEXlm/IRIX64 to the target directory
(Command: cp /CDROM/install/FLEXlm/IRIX64/* /usr/local/flexlm/IRIX64)
License server only:
copy the file /usr/local/flexlm/IRIX64/S85lmgrd_cenit to /sbin/rc2.d/S85lmgrd_cenit
This file must be adjusted: there is a change user (su -) in it. You must define a user, which is running your FLEXlm server. It is recommended to use not the root.
(Command: cp /usr/local/flexlm/IRIX64/S85lmgrd_cenit /sbin/rc2.d/S85lmgrd_cenit)
Page 2
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 1 - Installation Guide
1.3.5
•
•
•
•
•
Installation on SunOS
Login as root
Create directory for the FLEXlm binaries, for example: /usr/local/flexlm/SunOS
(Command: mkdir –p /usr/local/flexlm/SunOS)
Copy the files of the directory /CDROM/install/FLEXlm/SunOS to the target directory
(Command: cp /CDROM/install/FLEXlm/SunOS/* /usr/local/flexlm/SunOS)
License server only:
copy the file /usr/local/flexlm/SunOS/S85lmgrd_cenit to /sbin/rc2.d/S85lmgrd_cenit
This file must be adjusted: there is a change user (su -) in it. You must define a user, which is running your FLEXlm server. It is recommended to use not the root.
(Command: cp /usr/local/flexlm/SunOS/S85lmgrd_cenit /sbin/rc2.d/S85lmgrd_cenit)
1.4
cPost Licensing
cPost is licensed by FLEXlm. There are 2 possible license types:
•
•
Nodelock
cPost runs only on one computer. There is no installtion of a FLEXlm server necessary.
Floating
cPost runs on all computers in the same network with the license server. The installation of FLEXlm
is necessary.
1.4.1
License models
cPost Builder (cPB) and cPost Runtime (cPR) requires a license. There are 4 different license
lveles available. The functionality and the limitations depends on this level.
There is no limitation on the number of Post Processors you can define or execute with one
valid license.
The following table shows the license level and its limitation:
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 3
Chapter 1 - Installation Guide
The license levels are:
•
•
•
•
No license
This is a limited trial version. There is no FLEXlm necessary.
Demo
The generated posts run everywhere but only 10 days after storage. This is the default license type
to test the complete functionalty of cPost or for resellers.
Site (user)
The generated posts run only at one customers site without any other limitation. This is the default
customer license type.
Service
The generated posts run everywhere without limitation. This is the typical service provider license.
1.4.2
Getting the Hostid
The hostid is determined with the module lmutil of the FLEXlm directory of the Installation disc:
•
•
•
•
•
•
Copy this file to a local temporary directory
Open a DOS box on Windows
Change to the local directory
Type “lmutil lmhostid”
The result is the needed hostid for FLEXlm
Order your license with this hostid with an email to cam@cenit.de
1.4.3
Definition of license file or server
If cPost is started the first time and the license is not found, the following panel pops up.
There is a choice between file (nodelock license) and server (floating license).
For nodelock licensing mark the switch “Specify the License File”, press the “Next” button and
follow the file selection dialog.
For floating licensing mark the switch “Specfiy the License Server”, press the “Next” button. The
FLEXlm License Finder panel is opened.
Page 4
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 1 - Installation Guide
Type the port number of the FLEXlm demon and the hostname of the server in the text field.
This data can be read from ther SERVER line of the license file. You need the 1st and 3rd parameter.
For example:
SERVER pnwp00129 000102e17881 7788
means
license server name is pnwp00129
license server hostid is 000102e17881
license server port is 7788
The correct input is “7788@pnwp00129”.
Now press the “Next” button and the last panel pops up:
Press now the “Finish” button. The license definition is now stored in the registry on Windows
and in the file .flexlmrc in your home directory on UNIX. The registry key is
“CENIT_LICENSE_FILE”.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 5
Chapter 1 - Installation Guide
Page 6
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 2 - cPost Builder User Interface
2
cPost Builder User Interface
This interface is composed of 4 major sections:
•
•
•
•
Menu bar with Tool bar
Parameter Structure Tree
Tab Pages
Online Help
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 7
Chapter 2 - cPost Builder User Interface
2.2
The Menubar and The Tool bar
2.2.1
The Menu bar
At the top of the panel is the menubar established.
•
File
All actions on files are combined in this menu. It is opened by selecting the “File” button.
•
•
•
•
•
•
•
•
•
New: Create a new Post Processor parameter file
Open: Open an existing Post Processor parameter file
Close: If the file is modified a message panel pops up to save the file before exiting
Recent: The last 5 edited parameter files are displayed
Import: Import a Post Processor parameter file from TSA/PPB
Save: Saves the actual Post Processor parameter file
Save as: Saves the actual Post Processor parameter file after changing the name
Exit: Closes the cPost Module with or without saving
Edit
The search function is included in the “Edit” menu.
After selecting the “Search” button the Search panel appears.
•
•
Page 8
Text to find: String to look for
Start: Start the search
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 2 - cPost Builder User Interface
•
•
Options:
• ppID: The parameter ids will be searched for the given string. This option is used to define
the panel where you can define parameter with the entered id.
• Text: The panel strings will be searched for the given string. This option is used to find all
parameters with the input string in the panel text.
• Value: The values will be searched for the given string. It is used to search for strings in all
input fields including sequences and macros.
Extras
The language can be selected in this menu.
•
•
Language:
• Builder: The list on the left side is shown with the Post Processor parameter id
• English: The list on the left side is shown with the English description
Options settings: Display settings
Set the looking
•
•
•
•
•
•
Language
• English
• Builder
Look&Feel:
The appearance of the panel can be changed in this menu point
Font size
defines the size of the text
Block colors:
The highlighting color of block variables, text and separators can be defined.
“OK” saves the new settings and closes the Option settings panel
“Cancel” closes the Option settings panel without saving
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 9
Chapter 2 - cPost Builder User Interface
•
Options settings: Directories
Set the directories
•
•
•
Default path for PP parameter files
defines the path in which the Post Processor parameter files are stored
“OK” saves the new settings and closes the Option settings panel
“Cancel” closes the Option settings panel without saving
•
Windows:
All open parameter files are displayed in this menu. If you want to change to one of these files,
select it.
•
Help:
In the menu point you can get informations about the product. It is also a link to the cPost website
included.
2.2.2
The Toolbar
Some special Functions are provided as a icon
creates a new file
opens an existing file
closes an open file
saves an open file
saves an open file under a different name
searchs for a string
leaves the product
Page 10
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 2 - cPost Builder User Interface
2.4
The Parameter Tree
The Parameter structure tree PST gives you an overview over all available parameter, sequences, macros and settings of a Post Processor. The parameter tree has 4 major nodes:
•
•
•
•
HEADER INFORMATION
This section includes all file informations
GLOBAL SETTINGS
This section includes all global parameters
MACHINE TOOL
This section includes all machine parameters
CONTROLLER
This section includes all controller parameters
Below this top level structure, all the tab pages with its parameters and sequences are grouped
by different topic. The availibilty and the content of the tab pages depend on the selected machine tool type.
All nodes in the PST can be opened or closed by double click. Clicking on one entity in the PST
makes the appropriate tap page active and the cursor is placed in the input filed of the selected
parameter. The online help panel is also updated with the information of the selected parameter.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 11
Chapter 2 - cPost Builder User Interface
The selection of one parameter tree element opens a tab page and shows the help text for the
first variable in the tab page in the help panel.
E.g. The selection of FEEDRATE
The tab page FEEDRAT is opened and the help text for the Feed address (ADR_FEEDRATE)
variable is shown.
Each parameter can be selected in the parameter tree section and also direct in the tab page.
If the language is changed to builder, the ids of the parameter are displayed in the panels.
Page 12
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 2 - cPost Builder User Interface
2.5
The Tab Pages
There are different elements on the tab pages depending on the selected parameter.
2.5.3
•
•
•
•
•
Select box (Modal)
the functionality is selected if there is a tick in the box. If selected, all data of the next motion is output without modality check.
Switch (don’t read ahead)
there is a choice between
• “don’t read ahead”
this is the default value. It means cPost starts directly with the output of the sequence. The
ISO coordiantes of the following motion are not available.
• “only read ahead”
cPost read ahead in input data and interprets all macros until the next motion. The ISO coordinates of this motion are put in the variable pool and then the sequence is output.
• “read and suppress”
See “only read ahead” but the following motion is skipped.
This flag should be only set to “read ahead” if necessary. It will slow down the pp execution.
Switch (has priority)
there is a choice between some given possibilities to define the output of the parameters.
Counter (Major ID, Minor ID)
Either a number can be written in the box or the number can be counted by the arrows beside the
box.
Text field
The sequence definition can be added in this box. The syntax is described in “Sequence Definition”
on page 25.
2.5.4
•
•
•
•
Block/Sequence definitions
Address definitions
Select box (Modal)
the functionality is selected if there is a tick in the box. It the switch is activated, the modality of this
parameter is checked before output.
Switch (has priority)
there is a choice in between some given possibilities.
Counter (Major ID, Minor ID)
Either a number can be written in the box or the number can be counted by the arrows beside the
box.
Text box (Program end command)
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 13
Chapter 2 - cPost Builder User Interface
The required text can be added in the box. If this panel contains also a format definition, it is possible to define a string before and after the formatted value. The syntax is ’string before’;VAL;’string
after’. Both parts are available in the variable pool, first one is the normal name, second one has
added a ’_2ND’ at the end.
For example:
The expected output of the X axis is X=<formatted X coordiante>+R100. The definition is
’X=’;VAL;’+R100’. The pool variables are:
C_AXIS_X_ADR
’X=’
C_AXIS_X_ADR_2ND ’+R100’.
•
•
“Format” button
A new Format can be defined or an existing format can be selcted.
Format box
The name of a Format can be added in the box. The syntax is described in “Format Definition” on
page 23.
2.6
Online help section
This section contains some information about the active parameter. The section is updated
when a new parameter is selected in the input section or a new parameter is selected in the
parameter structure tree.
The first line contains the internal cPost identifier of the parameter in brackets. This identifier is
needed for the call of some macro functions see in “Additional cPost Functions (CF_xxx)” on
page 55.
Page 14
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 3- Definition of Post Processor
3
Definition of Post Processor
3.1
Functional Levels
cPost has three different functional levels:
•
Parameter
Parameter manage the output of commands and coordinates (format, syntax), e.g. linear interpolation, spindle, feed, etc.
•
Sequences (blocks)
A sequences allows to output multiple commands at a certain event, e.g. tool change, start of program etc.
•
Macros
Macros are used to cover more complex output with the full capablities of a basic like macro language. Within the macros, a full access to all internal parameter and a powerful function library is
given. This functionalty is described separatly in “Macro Language” on page 32
The definition of the output of parameters and seqeunces is described in this chapter.
3.2
MCD Output Control
3.2.1
General
All output data is put to an internal output stack by cPost. This output stack is flushed after each
motion by default. But it is also possible to flush it like described below.
There are two possible ways of arranging the individual command groups from the output stack
within the MCD program:
•
•
Setting tabulators
Defining priorities
The priority defined output has also some additional features. The output stack can be flushed
with some special options. This is listed in the following table:
Switch
Meaning
Tabulator
Tabulators on; the Tabulator position are used.
has priorities
Commands or command strings in blocks are output with
other preceding or subsequent commands. This means the
output stack is not emptied before or after output of the block.
has priorities + flush output before
Commands or command strings in blocks are not output
together with preceding commands, this means the output
stack is emptied prior to output of the block.
has priorities + flush output after
Commands or command strings in blocks are not output
together with subsequent commands, this means the output
stack is emptied following output of the block.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 15
Chapter 3- Definition of Post Processor
Switch
Meaning
has priorities + flush output before and after
Commands or command strings in blocks are neither output
with preceding nor with subsequent commands, this means
the output stack is emptied before and after output of the
block.
has priorities + separate
output
Commands or command strings in blocks are output immediately, this means there is no further influencing of the output
stack.
The following examples shows the different output stack flush options with the output of the
LOADTL sequence:
APT Program:
PARTNO/4711
CUTTER/ 8.000000, .000000, 4.000000, .000000, .000000, .000000, 30.000000
SPINDL/500.00000,RPM,CLW
COOLNT/ON
LOADTL/2343
FEDRAT/500,MMPM
GOTO / 55.00000, 33.00000,
3.00000
RAPID
GOTO / .00000,
.00000, 100.00000
SPINDL/OFF
The LOADTL sequence has default priorities. This means the output of the commands before the
LOADTL and the LOADLTL sequence is output together.
%MPF4711
N1
(TOOLCHANGE)
N11
M06
T2343
G1
X55.
N21
G0
X0.
Y0.
Z100.
N31
M05
N41
M30
Y33.
Z3.
F500
M03
M08
The LOADTL sequence has priorities and output stack is flushed before. This means the output
stack is emptied before the LOADTL (SPINDL and COOLNT). The following commands are output
together (LOADTL, FEDRAT and GOTO).
%MPF4711
N1
S500
N11
(TOOLCHANGE)
N21
M06
T2343
G1
X55.
N31
G0
X0.
Y0.
Z100.
N41
M05
N51
M30
Page 16
M03
M08
Y33.
Z3.
F500
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 3- Definition of Post Processor
The LOADTL sequence has priorities and output stack is flushed after the sequence. This means
the commands including the LOADTL are output together (SPINDL, CUTTER and LOADTL). Than
the output stack will flushed.
%MPF4711
N1
(TOOLCHANGE)
S500
M03
M08
N11
M06
T2343
N21
G1
X55.
Y33.
Z3.
F500
N31
G0
X0.
Y0.
Z100.
N41
M05
N51
M30
The LOADTL sequence has priorities and the stack is output separate. This means the output
stack is flushed before and after the sequence.
%MPF4711
N1
S500
M03
M08
N11
(TOOLCHANGE)
N21
M06
T2343
N31
G1
X55.
Y33.
Z3.
N41
G0
X0.
Y0.
Z100.
N51
M05
N61
M30
F500
The LOADTL sequence has priorities and the sequence is output directly without flushing the output stack. This means the output stack is not affected from the LOADTL sequence.
%MPF4711
N1
(TOOLCHANGE)
N11
M06
T2343
N21
G1
X55.
Y33.
Z3.
N31
G0
X0.
Y0.
Z100.
N41
M05
N51
M30
© CENIT AG Systemhaus
cPost Documentation V1R6
F500
S500
M03
M08
Page 17
Chapter 3- Definition of Post Processor
3.2.2
Tabulators
Setting tabulators ensures that each command in the NC program is always inserted at the
same point in a corresponding line. This procedure is simple and produces an NC program with
a strict breakdown.
Tabulators causes the following problems:
•
•
The strict arrangement of the commands in line with the tabulators can produce gaps in the program
lines which do not affect the NC controller of the machine tool, but which may be undesirable in the
NC program.
The exact length of the individual coordinates must be known when employing the tabulator method
so as to avoid conflicts between the tabulators. There will be no output if there is not sufficient space
for the minimum number of positions before and after the decimal point. If the maximum number of
positions before and after the decimal point is longer, the coordinates will be abbreviated at the
expense of accuracy.
Example
Tabulators are set as follows:
command
N
G0
G1
X
Y
Z
tabulator
1
5
5
9
17
25
It is important that the coordinate format be selected in line with the tabulators. In this case this
means:
Eight positions available between column 9 and column 17, of which one is required as blank
character and one each for the decimal point and the coordinate designation. This leaves five
positions which are split up into max. three positions before the decimal point and two afterwards.
The APT commands:
RAPID
GOTO/ 200.000, 100.000, 100.000
GOTO/ 200.000, 100.000, 10.000
GOTO/ 172.120, 65.000, 10.000
GOTO/ 192.120, 65.000, 15.000
produce the following NC program:
N1
G0
X200
N2
G1
Z10
N3
X172.12
Y65
N4
X192.12
Z15
Y100
Z100
The gaps due to missing commands can be clearly seen. A position within the line must be assigned to all NC commands (S, F, I, J, K, M03, M07, etc.). The Post Processor automatically
starts a new line with the APT commands GOTO, GODLTA, PPRINT, CUTCOM, CIRCLE and
CYCLE.
Page 18
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 3- Definition of Post Processor
3.2.3
Priorities
The gaps occurring in the NC program lines when using the tabulator method are prevented by
defining priorities. That means an appropriate setting of the Major ID and the Minor ID.
The IDs determinate the importance of single commands with respect to other commands: The
lower the value for a ID the higher the importance of the command.
The Major ID establishes the sequence of the individual NC commands in the program line. The
commands with the lowest Major ID value (and the highest priority in order to that) are preferred
in the sequence and appear at the start of the line. The commands with the higher values
(therefore with the lower priority) come after. If two NC commands have the same Major ID,
then one of them is written into the preceding line, namely the one with the higher Minor ID (this
means with the lower registered value). Here again, the APT commands GOTO, GODLTA,
PPRINT, CIRCLE, CUTCOM and CYCLE cause the Post Processor to start a new line.
Example
Major ID is set as follows:
command
N
G0
G1
X
Y
Z
major id
1
2
2
4
6
8
minor id
0
0
0
0
0
0
The APT program from the example for tabulators (see “Tabulators” on page 18) has now the
following NC output:
N1
G0
X200
N2
G1
Z10
N3
X172.12
Y65
N4
X192.12
Z15
Y100
Z100
The gaps have disappeared and allowance has been made for the length of the commands (coordinates).
The spindle, feed rate and coolant commands have still to be incorporated. Generally speaking, these commands can come in the same line with motion commands after the coordinates.
They are thus given higher values for their Major ID.
command
F
S
M03
M04
M08
major id
10
12
14
14
16
minor id
0
0
0
0
0
The APT program:
RAPID
GOTO /200.000, 100.000, 100.000
SPINDL/2000, CLW
FEDRAT/150
COOLNT/ ON
GOTO /200.000, 100.000, 10.000
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 19
Chapter 3- Definition of Post Processor
then results in the following NC program:
N1
G0
X200
Y100
Z200
N2
G1
Z10
F150
S2000
M03
M08
There is a conflict situation despite the fact that the sequence of commands is correct:
Some controls do not accept multiple use of commands from the same letter group in one line.
The conflict occurring here between M03 (clockwise rotation of spindle) and M08 (coolant on)
is solved by giving both commands the same Major ID. The Post Processor attempts to insert
both commands at the same location. The assignment of the Minor ID determines which command (the one with the higher line priority) is inserted in the preceding line.
The same major id for M03 and M08 and the following minor id:
command
F
S
M03
M08
major id
10
12
14
14
minor id
50
50
30
50
changes the NC output to:
N1
G0
N2
M03
N3
G1
X200
Y100
Z200
Z10
F150
S2000
M08
This solves the conflict between M03 and M08, but creates the new problem that the spindle
command S can only be given in conjunction with the command M03. Both are given the same
Minor ID to enable them to be written into the same line. The spindle command thus accompanies the advanced command M03 into its new line.
New minor id for S = 30:
command
F
S
M03
M08
major id
10
12
14
14
minor id
50
30
30
50
changes the NC output to:
N1
G0
X200
N2
S2000
M03
N3
G1
Z10
Y100
Z200
F150
M08
As the spindle command S still has a lower Major ID, it is inserted before M03. In this case, it
is appropriate for the Major ID of S to be only 1 lower than that of M03 to stop any other command in this line with the same Major ID being inserted between the two.
Page 20
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 3- Definition of Post Processor
If the coolant command is to be applied before the feed is switched on, only the feed command
F and the coolant command M08 must have the same Major ID with the command M08 being
given a lower Minor ID value.
command
F
S
M03
M08
major id
14
12
14
14
minor id
50
30
30
40
then results the following program:
N1
G0
X200
N2
S2000
M03
N3
M08
N4
G1
Z10
Y100
Z200
F150
Summary of selection of major and minor id:
•
•
•
•
A low value means higher priority.
The values may be any integer between 1 and 99. If a value of 0 is set, then this has the lowest priority.
The Major ID determines which commands are not allowed to be in the same line. It also establishes
the sequence within a line.
The Minor ID establishes which values must be in the same line. It also determines which command
is brought forward in the event of a major id conflict.
Some basic settings:
•
•
•
•
•
All G-commands (G0, G1, G2, G41, G79,...) are given the same Major ID (although the Post Processor automatically jumps to the next line in the case of APT commands which result in a G-command).
All M-commands (M03, M04, M08,...) are given the same Major ID. The commands M03, M04 and S
receive the same Minor ID.
Command M05 must be given a lower Minor ID than the commands M03 and M04, as otherwise the
work piece may be approached with the spindle switched off.
The Major ID of the coordinates X, Y, Z, I, J and K must ascend in the given sequence and be
greater than that of the G-commands.
The commands for the sub program call (G22, N, L) must have the same Minor ID. The Major ID is
set to ascend in the appropriate order with G22 having the same Major ID as the other G-commands. The same applies accordingly to program sections which are repeated.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 21
Chapter 3- Definition of Post Processor
3.2.4
•
Defining the output control in the GUI
List format:
• has Tabulator:
• Tabulator (ADR_TAB):
• has Priority:
• Major ID (ADR_PRIO1):
• Minor ID (ADR_PRIO2):
• has Priorities + flush output before:
• Major ID (ADR_PRIO1):
• Minor ID (ADR_PRIO2):
• has Priorities + flush output after:
• Major ID (ADR_PRIO1):
• Minor ID (ADR_PRIO2):
• has Priorities + separate output:
• Major ID (ADR_PRIO1):
• Minor ID (ADR_PRIO2):
Tabulator:
This defines the tabulator position for this command.
Major id:
(ADR_PRIO1) The major id defines the output order of commands (parts) in the NC line(s). Valid Values are: 0 (no Priority), 1 (highest priority)... 9999 (lowest priority) The checking rules are:
•
•
•
id=0: no check.
lower id causes earlier output.
same id causes an conflict. Command(s) will be swapped out in a new NC line depending on
Minor id rules.
Minor id:
(ADR_PRIO2) The minor id is used in case of a conflict of the major id between two parts of a
new generated iso record. Valid values are: 0 (no priority), 1 (highest priority) .. 9999 (lowest
priority)
All parts with the same minor id will be swapped out in a separate record together with the conflicting part.
The checking rules are:
•
•
lower id causes earlier output.
same id or id=0: The output order results in the order how the parts were created (first in first
out).
Page 22
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 3- Definition of Post Processor
3.3
Format Definition
This paragraph describes the syntax for format descriptions of numerical variables or text variables and the list format parameters of the NC data to be generated. The numerical formats
are used in the output of simple commands, sequences and macros. The text formats are only
used in the output of sequences.
3.3.1
Format for Numerical Variables
A format descriptions defines the number of positions before and after the decimal point in numerical variables. The format syntax consists of the identifying letter N and the number of positions before and after the decimal point.
N[+][BeforeMin].[-][AfterMax][%AfterMin]
Components
Description
[+]
Output with positive Sign
[BeforeMin]
Minimum number of positions before the decimal point
.[-]
Output with decimal point
[AfterMax]
Maximum number of positions after the decimal point
[%AfterMin]
Minimum number of positions after the decimal point
3.3.1.1 Format Definition In the GUI
•
•
•
•
•
•
•
Format type:
depending on the selected type the areas are filled different.
# of pre decimal digits:
• + sign equal [+]
• min equal [BeforeMin]
Options:
• decimal sign for integer equal .[-]
# of post decimal digits:
• max equal [AfterMax]
• min equal [%AfterMin]
Format sample output:
a preview of the defined format is shown.
“OK” button:
The definitions are saved and the window is closed.
“Cancel” button:
The window is closed without saving.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 23
Chapter 3- Definition of Post Processor
•
“Add” button:
A new format can be defined. After setting the number of digits press the Add button. Now the Format name is editing. A new name can be given. If an old format should be overwritten, type its
name. Then press the Return key. After this press the OK button. The format is now created.
3.3.2
Format for Text Variables
This format description can also define the minimum string length of text variables. This format
is only used in the sequences described in chapter “Sequence Definition” on page 25.
Format
Description
S
The text variable is output unchanged
Si
The text variable is output unchanged with a minimum
length i
Page 24
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 3- Definition of Post Processor
3.4
Sequence Definition
MCD seqeunces are used to define complex NC sequences with the help of mathematical functions, pool variables, text information and format descriptions. They are evaluated at every appearance of the corresponding APT command. There is no modality check between sequences
and the general output of commands or addresses by default. For this feature you must use
the sequence function CF_MOD_SETADR$.
3.4.3
Pool Variables
There are several variables with can be used in a sequence definition. All available cPost variables start with C_ and they are listed in the Appendix.See “Pool Variables” on page 322.
Only global pool variables can be handled by sequences.
3.4.4
Accessing Pool Variables in Sequences
Pool variables can be numerical as well as text variables (alphanumeric variables). The elements of the NC sequence definition must be separated by a semicolon. Each variable or variable term must be followed by its format. The format definition is described in “Format
Definition” on page 23. The following list defines the syntax of a sequence:
•
•
•
•
•
Numerical variables can be accessed directly or in a term form with format indication, e.g
C_AXIS_X_NXT_POS+100; N1.1;
To access the alphanumeric pool variables the format indication S is required, e.g C_AXIS_X_ADR;
S;
Array or index variables may be read or set using the correct index. In case the current value should
be read, the variable name is added by _C, e.g. the actual x axis value of the actual ORIGIN/MANUAL command can be accessed with C_ORIGIN_MAN_X_AXIS_C.
Constant text information must be placed either in quotes. There is no format description, e.g. ’fixed
text’ or “fixed text”
It is not allowed to start pool variables with _
3.4.5
Mathematical Functions in Sequences
The following mathematical functions can be called in sequences:
Function call
Function
ABS(a)
Calculates value of expression a
ACOS(a)
Calculates arc cos of expression a
ASIN(a)
Calculates arc sin of expression a
ATAN(a)
Calculates arc tan of expression a
COS(a)
Calculates cos of expression a
INT(a)
Truncates decimal points of expression a
MAX(a,b)
Determines maximum value of a and b
MIN(a,b)
Determines minimum value of a and b
SIGN(a,b)
+b when a > 0; –b when a < 0
SIN(a)
Calculates sin of expression a
SQR(a)
Calculates square root of expression a
TAN(a)
Calculates tan of expression a
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 25
Chapter 3- Definition of Post Processor
3.4.6
String functions in Sequences
It is possible to modify also the output of text variables in sequences. This is supported by the
following functions. The syntax is the same as if they are used in macros (see Macro Language):
Function call
Function
LEFT$(string$,nb)
Returns only the first nb characters of the inout variable string$,
e.g. LEFT$(“TESTSTRING”,4) returns “TEST”
LOWER$(string$)
Returns the input string$ in non capital letters
e.g. LOWER$(“TESTSTRING”) returns “teststring”
MID$(string$, start [, nb] )
Returns the characters beginning at the position start until the
end (no number defined) or only nb characaters
e.g. MID$(“TESTSTRING”,4,3) returns “TST” and
MID$(“TESTSTRING”,4) returns “TSTRING”
RIGHT$(string$, nb)
Returns only the last nb characters of the inout variable string$
e.g. LEFT$(“TESTSTRING”,4) returns “RING”
UPPER$(string$)
Returns the input string$ in capital letters
e.g. UPPER$(“teststring”) returns “TESTSTRING”
3.4.7
Special functions in Sequences
3.4.7.1 CF_MACRO_CALL
This function is used to call macros from a sequence. This is necessary if some conditional output has to be created.
Syntax:
CF_MACRO_CALL (MACRO$)
Input:
MACRO$
STRING
Macro name
Example:
There is some conditional output in the tool change sequence. If the tool change is automatic,
there should be a “L937” call. Otherwise there should be a “L934” call. This is done with the
variable A$ in the sequence and the macro TOOL_CHANGE_IF.
Sequence definition:
A$ = '';
CF_MACRO_CALL("TOOL_CHANGE_IF");
';=============== TOOL CHANGE =================';$;
'; DESC : ';C_TLNO_TLID_C;S;$;
';=============================================';$;
'T';C_TL_CUR_TLID;*INT;' M06';$;
A$;S;$;
'G64 SOFT';$;
Page 26
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 3- Definition of Post Processor
Macro:
IF C_TLNO_TL_CHANGE_C <> ’AUTO’ THEN
A$ = ’L934’
ELSE
A$ = ’L937’
END IF
3.4.7.2 CF_MOD_SETADR$
This function is used to set the internal data for the modality check of all address parameters
(ADR_*). If the second argument is a STRING, this value is direct set. If it is a NUMBER, the
value will be formatted with its format first and then set. This function is necessary, because
cPost doesn’t check, what is output in sequences. This means the internal data for the modality
check is the same like before the sequence output. There is only a switch to reset the arrays
for the motion data check.
Syntax:
CF_MOD_SETADR$ (ID$, VALUE$) or
CF_MOD_SETADR$ (ID$, VALUE)
Input:
ID$
VALUE$
or
VALUE
STRING
STRING
Parameter ID
New value already formatted
NUMBER New value
Example:
This example shows how this function is used. The input APT for both sequences is the
same. The first sequence is without the use of this function, the second uses this function.
APT:
TOOLNO/10,MILL, 0.787000, 0.000000,, 5.551000, 1.496000,, 1.496000,2,$
196.850000,IPM, 2500.000000,RPM,CLW,OFF, AUTO, 0.000000,NOTE
TPRINT/SFSL_D20.0_LG,Schaftfräser_schlichten_lg,SFSL_D20.0_LG
LOADTL/10
SPINDL/ 2500.0000,RPM,CLW
RAPID
GOTO / -4.33071, -2.75591, 3.93701, 0.000000, 0.000000, 1.000000
Sequence definition without CF_MOD_SETADR$:
';=============== TOOL CHANGE =================';$;
'; DESC : ';C_TLNO_TLID_C;S;$;
';=============================================';$;
'T';C_TL_CUR_TLID;*INT;' M06';$;
'S';C_SPINDL_SPEED;*INT;' ';C_SPINDL_WAY_COM;S;$;
'G64 SOFT';$;
The Spindle data is output in the tool change sequence. If it is only output in the sequence,
there is no update of the internal data. It will output twice:
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 27
Chapter 3- Definition of Post Processor
ISO:
N30 ;=============== TOOL CHANGE =================
N40 ; DESC : SFSL_D20.0_LG
N50 ;=============================================
N60 T10 M06
N70 S2500 M3
N80 G64 SOFT
N90 G0 X-4.331 Y-2.756 Z3.937 S2500 M3
The output of S2500 M3 in record N90 can be suppressed with the use of this function. The
sequence is changed to:
Sequence definition with CF_MOD_SETADR$
:
’;=============== TOOL CHANGE =================’;$;
’; DESC : ’;C_TLNO_TLID_C;S;$;
’;=============================================’;$;
’T’;C_TL_CUR_TLID;*INT;’ M06’;$;
’S’;C_SPINDL_SPEED;*INT;’ ’;C_SPINDL_WAY_COM;S;$;
’G64 SOFT’;$;
CF_MOD_SETADR$("SPINDLE_SPEED",C_SPINDL_SPEED);
CF_MOD_SETADR$("SPINDLE_CLOCKWISE",C_SPINDL_WAY_COM);
The generated ISO is now:
ISO:
N30 ;=============== TOOL CHANGE =================
N40 ; DESC : SFSL_D20.0_LG
N50 ;=============================================
N60 T10 M06
N70 S2500 M3
N80 G64 SOFT
N90 G0 X-4.331 Y-2.756 Z3.937
3.4.8
Special Characters for Sequence Definition
The following special characters have a specific significance in the sequences.
Character
Meaning
;
Separation of individual parts of structure (text variable, numerical section,
text section or subsequent special character)
’ or “
Constant string delimiter
+ - / * ()
Operators for linking variables and numerical values in numerical subblocks
The next special sequence characters can be defined in the Tab page “SEQUENCE SETTINGS” on page 80. The meaning and the default values are listed in the following table:
Character
Meaning
$
Defines line break in NC program
LZ
Produces empty line in NC program
Page 28
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 3- Definition of Post Processor
Character
Meaning
?
Start/end mark of individual block lines without record number
#
Start/end mark of table, this means the block lines within this marking
are repeated as often as required
:
Start/end mark of lines not output when block first called
0*
Suppress zero values
With 0* the variable and the preceding text variable are generated only if
the value of the variable is not 0.
3.4.9
•
Sequence definition block in the GUI
Modal (BLK_MOD):
This parameter defines if the modality of the motion command and the coordinates is temporaly
switched off for the next motion or not. If the sequence contains motions, the modality should be
switched off. cPost doesn't interpret the sequence iso code and so the modality check is made with
the last motion before the sequence. This could damage the tool machine.
Example:
APT
Output with modality:
Output without modality:
GOTO / 100,100,100
N100 G1 X100 Y100 Z100
N100 G1 X100 Y100 Z100
LOADTL / 1
N110 M06 T01
N110 M06 T01
GOTO / 100, 100, 200
N120 Z200
N120 G1 X100 Y100 Z200
•
“don’t read ahead” switch (BLK_READFORWARD)
If “only read ahead” or “read and suppress” is selected, cPost will interpret all APT commands until
the next motion and puts all data including the following coordinates (C_AXIS_X_NXT_POS,
C_AXIS_Y_NXT_POS and so on) in the variable pool before the output of this sequence. This is
necessary if the coordinates of the following position are output in this sequence.
If “don’t read ahead” is selected, cPost puts only the current values in the variable pool. There is no
read ahead until the next motion. This is the faster solution and this is recommended for simple output sequences without coordinates.
•
Text field
The output sequence is defined here.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 29
Chapter 3- Definition of Post Processor
3.4.10 Examples for sequences
The default definition of the special sequence characters are used in the following examples
(see “Special Characters for Sequence Definition” on page 28):
•
Example for a tool change sequence:
definition:
’( Tool change )’;$;
’T’;C_TL_CUR_TLD;N2.-0%0;’ M06’;$;
The comment ( Tool change ) is defined as a fixed text in single inverted commas. The $ defines a
line break in the iso output. The next line begins with the address of the tool number defined as a
fixed text in single inverted commas. This is followed by a numerical value with a format definition.
The current tool number will be output as a formatted integer. The last string is the tool change command. This will have the following output:
output:
N... ( Tool change)
N... T02 M06
•
Example for output of a line without record number:
definition:
?;’; Tool change’;$;?;$;
’T’;C_TL_CUR_TLD;N2.-0%0;’ M06’;$;
With the first ? the record numbering is switched off. With the second the record numbering is
switched on. All lines between the ? are output without record numbers.
output:
; Tool change
N... T02 M06
•
Example for output of a line with : before the record number:
definition:
’( Tool change )’;$;
?;’:N’;C_RECORD_NUMBER;S;’ T’;C_TL_CUR_TLD;N2.-0%0;’ M06’;$;?;$;
The automatic creation of the record number is switched off with the ?. The fixed text ’:N’ defines the
address of the record number for this line. The record number is accessed with the variable
C_RECORD_NUMBER and the format S. In this case the format S is neccessary for the correct
counting of the record number.
output:
( Tool change )
:N... T02 M06
•
Example for output of ':
definition:
"special character ’ ";$
output:
special character ’
Page 30
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 3- Definition of Post Processor
•
Example of output of a simple tool table:
definition:
#;TABLE(C_TLNO_TL_NUMBER,C_TLNO_DIAMETER,C_TLNO_TLID);
'T';C_TLNO_TL_NUMBER_C;N2.-0%0;' R';C_TLNO_DIAMETER_C/2;N1.3%0;'
(';C_TLNO_TLID_C;S;')';$;#;$;
The start and end of a table are defined with the #. The variables of the table must be defined with
the TABLE() command. The variable must be single indicated and the maximum index must be the
same. The Post Processor creates an ISO record for each index. The records of the table must be
defined with the actual variables, e.g. C_TLNO_DIAMETER_C.
output for three tools:
N... T01 R10 ( FIRST TOOL )
N... T02 R12 ( SECOND TOOL )
N... T03 R16 ( THIRD TOOL )
•
Example for no output if the value of the variable is 0:
definition:
’G01 ’;’X100’; ’ Z’; C_AXIS_Z_NXT_POS;0*N1.1;$;
The 0* before the format definition suppress the output of the value and its address.
output:
C_AXIS_Z_NXT_POS is 0.0: N... G01 X100
C_AXIS_Z_NXT_POS is 1.0: N... G01 X100 Z1.
.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 31
Chapter 4 - Macro Language
4
Macro Language
Macros are used in a lot of programs to find special solutions by individual programming. Macros enable the modification of existing APT commands with individual definitions on one hand
and support the definition of new command sequences on the other. It is also possible to define
execution report macros for report head and end (in PP). The macros are stored in the Post
Processor.
At the execution of the Post Processor the process of the APT program is stopped at a macro
call. The macro is processed then. APT lines, generated in the macro, will be translated by the
Post Processor like normal APT lines (instead of the macro call). After processing the macro,
the APT program is continued.
4.1
Macro Call
Macros are called in the APT by the macro name. The syntax corresponds to the APT syntax.
In case parameters must be delivered, they are defined in the line of the macro call. Parameters
may be numerical values as well as text values:
MANAME/5,TEST,...
The parameters are saved in the variables C_VARG$(1), C_VARG$(2), ... respectively in the
variables C_VARGR(1), C_VARGR(2), ... in the order of delivery. The variables are of three
different types:
•
•
•
C_VARG$ for string variables
C_VARGR for numbers, if the conversion is possible
C_VARGC is the number of paramters which are delivered
for example:
SPINDL-Macro: SPINDL/3000,RPM,CLW
C_VARGC = 3 -> 3 delivered parameters
C_VARG$(1) = “3000”-> 1. parameter: rotation speed as string
C_VARG$(2) = “RPM”-> 2. parameter: deviceas string
C_VARG$(3) = “CLW”-> 3. parameter: direction of rotation as string
C_VARGR(1) = 3000.0-> 1. parameter. rotation speed as number
C_VARGR(2) = 0.0-> 2. parameter. no number -> undefined
C_VARGR(3) = 0.0-> 3. parameter. no number -> undefined
C_APTLINE$ = “SPINDL/3000,RPM,CLW”
All already existing poolvariables may be accessed directly from the macro, so they don't have
to be declared as parameters.
4.1.1
Nesting
It is allowed to call further macros out of a macro.
4.1.2
Recursive Call
Macros for new APT commands must not be called recursively.
If an APT command supported by cPost is replaced by a macro, a repeated call of this APT
command from the macro is possible. Then the command is processed not as a macro, but as
a normal APT command or block.
Page 32
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 4 - Macro Language
Example
APT:
GOTO/ 10, 20, 30
:
Macro GOTO:
* Output of the new APT line: GOTO/ Z, Y, X
CF_APTTXT/’GOTO’ + C_VARG$(3) + ’,’ + C_VARG$(2) + ’,’ + C_VARG$(1)
:
NC:
N100 G1 X30 Y20 Z10
4.2
General Notes on usage
4.2.1
Commands
The definition of a makro is based on the programming language BASIC. All the Standard Basic
commands can be used in a macro.
Each macro line is interpreted separately.
4.2.2
Naming Conventions
Command names and function names are not case sensitive, so that "OPEN" and "open" and
"Open" are equivalent and "abs()" and "ABS()" and "Abs()" are equivalent.
Variable names are case senstive.
It is not allowed to start a command name with _.
4.2.3
TRUE and FALSE
TRUE is defined as 1 and FALSE is defined as 0 in the cPost macro language.
4.2.4
Operators and Precedence
The cPost Interpreter recognizes the following operators:
^
exponentiation
*
multiplication
/
division
\
integer division
MOD
modulus (remainder) arithmetic
+
addition
-
subtraction
=
equality or assignment
<>
inequality
<
less than
>
greater than
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 33
Chapter 4 - Macro Language
<=
less than or equal to
=<
less than or equal to
>=
greater than or equal to
=>
greater than or equal to
NOT
negation
AND
conjunction
OR
disjunction
XOR
exclusive or
IMP
implication
EQV
equivalence
4.2.5
Macro Variables
4.2.5.1
General
New variables must be initialized before the first usage, that means a value must be assigned.
You can do that in the NC block for the program start (see “Sequence Definition” on page 25)
or in a macro that only initializes variables. This macro must be called at the beginning of the
APT program and these variable must be made global with COMMON.
4.2.5.2
Variable range
cPost pool variables are stored in different variable pools. All variables defined by cPost itself
(see “Pool Variables” on page 322) and all userdefined variables which are defined in sequences are global and are stored in the variable pool named “CALVIN”. These variables can be
used in every macro.
The userdefined macro variable handling is different. These variables are only local available
by default.
cPost checks if a global variable with the same name already exists. If it already exists, this
global variable is accessed. There is no creation of a local variable with the same name.
If a global variable with the same name doesn’t exist, the variable is created and stored in a
special pool for each macro. These variables are only available in this macro. If this variable
should be global, it must be made global with the COMMON command. In this case it is stored
in the global variable pool “CALVIN” instead of the local macro pool.
For checking which variables in which pools are available you can use the macro command
VARS. The following example list is the output of this command:
Number of pools 3
=======================================================
==================== Pool 1 = CALVIN
=======================================================
Pool: "CALVIN"
Text :
C_OS$ =>WIN<
Text :
C_USERID$ =>B<
Real :
GLOBAL_R =0.318310
.....
=======================================================
==================== Pool 2 = BIP_000_ADR_MOD
=======================================================
Pool: "BIP_000_ADR_MOD"
Real :
LOCAL_R =8.900000
Text :
LOCAL_STR$ =>FOO<
Page 34
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 4 - Macro Language
=======================================================
==================== Pool 3 = BIP_000_PROGMODE
=======================================================
Pool: "BIP_000_PROGMODE"
No Variables in Pool <BIP_000_PROGMODE>
The variables LOCAL_R and LOCAL_STR$ are created in the macro named ADR_MOD.
These variables are only local. The variables C_OS$, C_USERID$ and GLOBAL_R are global.
This variables are created by cPost (C_*) or defined as global by the user (GLOBAL_R).
4.2.5.3
Variable types
If the variable is a string varible, the name must end with a $ otherwise the variable has a
number type. Variables don’t need to be declared.
VAR1 = 3
VAR1 is a numerical variable
VAR2$ = ’Text ’
VAR2$ is a string variable
4.2.5.4
Arrays
In addition the use of arrays is possible. The array must be defined before use with the following
command:
DIM varname(maxInd[,maxInd]) AS STRING|NUMBER
Index calculation is allowed if it is from the type number.
VAR3(VAR1+7) = C_TLNO_TLID assignes a value to the array element (VAR1+7) of a variable.
If the global variable is an array, you have to repeat the dimensions in the COMMON command.
Example: Definition of a global text array
DIM TEXT$ (5,3) AS STRING
COMMON TEXT$ (5,3)
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 35
Chapter 4 - Macro Language
4.3
cPost supported standard BASIC commands
This chapter explains all standard BASIC commands which are supported in cPost macros.
They are grouped in mathematical functions, string function, file i/o functions and control structures.
4.3.1
Mathematical Functions
The following table lists all mathematical functions which are supported in cPost macros..
Function call
Function
ABS(a)
Calculates value of expression a
ACOS(a)
Calculates arc cos of expression a
ASIN(a)
Calculates arc sin of expression a
ATN(a)
Calculates arc tan of expression a
COS(a)
Calculates cos of expression a
INT(a)
Truncates decimal points of expression a
MAX(a,b)
Determines maximum value of a and b
MIN(a,b)
Determines minimum value of a and b
SGN(a)
+1 when a > 0; –1 when a < 0
SIGN(a,b)
+b when a > 0; –b when a < 0
SIN(a)
Calculates sin of expression a
SQR(a)
Calculates square root of expression a
TAN(a)
Calculates tan of expression a
ABS
Description:
ABS returns the absolute value of the argument a.
Syntax:
ABS( a )
where
a
=
number from which the absolute value will be calculated
Example:
X = ABS(-1.23456789)
X is set to 1.23456789
Page 36
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 4 - Macro Language
ACOS
Description:
ACOS returns the arc cosine value of the argument a.
Syntax:
ACOS( a )
where
a
=
input number
Example:
X = ACOS(1.0)
X is set to 0.0.
ASIN
Description:
ASIN returns the arc sine value of the argument a.
Syntax:
ASIN( a )
where
a
=
input number
Example:
X = ASIN (0.0)
X is set to 0.0.
ATN
Description:
ATN returns the arctangent value of the argument a in radians.
Syntax:
ATN( a )
where
a
=
number from which the arcus tangens will be calculated
Example:
X = ATN(10)
X is set to 1.471128.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 37
Chapter 4 - Macro Language
CINT
Description:
CINT returns the truncated integer of the argument a.
Syntax:
CINT( a )
where
a
=
number from which the integer value will be calculated
Example:
X = CINT(3.3)
Y = CINT(3.6)
X is set to 3, Y is set to 4.
COS
Description:
COS returns the cosine of the argument a. The argument must be in radians.
Syntax:
COS( a )
where
a
=
number from which the cosine will be calculated
Example:
X = COS(0.0)
X is set to 1.0
EXP
Description:
EXP returns the exponential value of the argument a.
Syntax:
EXP( a )
where
a
=
number from which the exponential value will be calculated
Example:
X = EXP(2)
X is set to 7.389056.
Page 38
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 4 - Macro Language
INT
Description:
INT returns the largest integer less than or equal to the argument a. This is not the "truncated" integer value. In this case you must use CINT.
Syntax:
INT( a )
where
a
=
number from which the integer value will be calculated
Example:
X = INT(3.3)
Y = INT(3.6)
X and Y are set to 3.
LOG
Description:
LOG returns the natural logarithm of the argument a.
Syntax:
LOG( a )
where
a
=
number from which the logarithm value will be calculated
Example:
X = LOG(100)
X is set to 4.60517.
MAX
Description:
MAX returns the maximum value of the arguments a and b.
Syntax:
MAX(a,b)
where
a,b
=
input numbers
Example:
X=MAX(5.5,6.6)
X is set to 6.6
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 39
Chapter 4 - Macro Language
MIN
Description:
MIN returns the minimum value of the arguments a and b.
Syntax:
MIN(a,b)
where
a,b
=
input numbers
Example:
X=MIN(5.5,6.6)
X is set to 5.5.
SGN
Description:
SGN returns the sign of the argument a. The return value is +1 for positive numbers, 0 for 0, and -1
for negative numbers.
Syntax:
SGN( a )
where
a
=
number from which the sign will be calculated
Example:
X = SGN(2.3)
X is set to 1.
SIN
Description:
SIN returns the sine of the argument a in radians.
Syntax:
SIN( a )
where
a
=
number from which the sine will be calculated
Example:
X = SIN(0.0)
X is set to 0.0.
Page 40
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 4 - Macro Language
SQR
Description:
SQR returns the square root of the argument a.
Syntax:
SQR( a )
where
a
=
number from which the square root will be calculated
Example:
X = SQR(4.0)
X is set to 2.0.
TAN
Description:
TAN returns the tangent of the argument a in radians.
Syntax:
TAN( a )
where
a
=
number from which the tangent will be calculated
Example:
X = TAN(1.0)
X is set to 1.557408.
4.3.2
String Functions
ASC
Description:
ASC returns the ASCII value of the first character of a given string.
Syntax:
ASC( string$ )
where
string$
=
Inputstring
Example:
X = ASC(“A”)
X is set to 65.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 41
Chapter 4 - Macro Language
CHR$
Description:
CHR$ returns a one character string with the character corresponding to the ASCII code indicated
by the input parameter number.
Syntax:
CHR$( number )
where
number
=
ASCII code
Example:
A$ = CHR$(65)
A$ is set to “A”.
INSTR
Description:
INSTR returns the position at which a string pattern occurs in a given string.
Syntax:
INSTR( string$, pattern$ )
where
string$
=
String in which is searched
pattern$
=
Pattern which is searched
Example:
X = INSTR(“THIS IS THE INPUT STRING”,”THE”)
X is set to 9.
LEFT$
Description:
LEFT$ returns a substring from a string. The length of the substring is defined as second parameter.
Syntax:
LEFT$( string$, length )
where
string$
=
string from which the left characters are truncated
length
=
number of characters
Example:
X$ = LEFT$ (“THIS IS FOO”, 4)
X$ is set to “THIS”.
Page 42
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 4 - Macro Language
LEN
Description:
LEN returns the number of characters of a string.
Syntax:
LEN( string$ )
where
string$
=
string from which the number of characters is calculated
Example:
X = LEN(“1234567890”)
X is set to 10.
LOWER$
Description:
LOWER$ returns a string$ spelled in non capital letters.
Syntax:
LOWER$( string$ )
where
string$
=
input string
Example:
X$ = LOWER$(“This Is A Test”)
X$ is set to “this is a test”.
MID$
Description:
MID$ returns a substring of a string$. It begins at start-position-in-string and continuing for numberof-characters.
Syntax:
MID$( string$, start, length )
where
string$
=
start
length
input string
start position
=
number of characters
Example:
X$ = MID$ (“THIS IS FOO”, 5,2)
X$ is set to “IS”.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 43
Chapter 4 - Macro Language
RIGHT$
Description:
RIGHT$ returns a substring of a string$. The length is defined by the second parameter.
Syntax:
RIGHT$( string$, length )
where
string$
=
input string
length
=
number of characters
Example:
X$ = RIGHT$ (“THIS IS FOO”, 3)
X$ is set to “FOO”.
SPACE$
Description:
SPACE$ returns a string of blank spaces. The string length is defined by the parameter.
Syntax:
SPACE$( number )
where
number
=
number of blanks
Example:
X$ = SPACE$(8)
X$ is set to “
“.
UPPER$
Description:
UPPER$ returns a string$ spelled in capital letters.
Syntax:
UPPER$( string$ )
where
string$
=
input string
Example:
X$ = UPPER$(“This Is A Test”)
X$ is set to “THIS IS A TEST”.
Page 44
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 4 - Macro Language
VAL
Description:
VAL returns the numerical value of the string$.
Syntax:
VAL( string$ )
where
string$
=
input string
Example:
X = VAL( “235” )
X is set to 235.
4.3.3
Control structures
CASE / CASE IF / END SELECT / SELECT CASE
Description:
Multiline conditional selection statements are possible with these commands. The expression given
as the argument to SELECT CASE will be evaluated by CASE staments following. The SELECT
CASE statement is finished with an END SELECT command. The CASE command introduces an
element, CASE IF introduces a conditional SELECT CASE element, and CASE ELSE introduces
the default SELECT CASE element.
Syntax:
SELECT CASE argument
CASE cond1
<do something>
CASE cond2
<do something other>
CASE IF cond3
<do something other >
CASE ELSE
<do default>
END SELECT
Example:
SELECT CASE I
CASE 4 TO 7
PRINT #1, " The value is between 4 and 7."
CASE 9
PRINT #1, " The value is 9."
CASE IF > 15
PRINT #1, “ The value is greater than 15.”
CASE ELSE
PRINT " This is default for any number less than 16 except 4,5,6,7,9"
END SELECT
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 45
Chapter 4 - Macro Language
DO LOOPS
Description:
DO implements a number of forms of program loops. There are several syntax forms possible:
DO...LOOP simply loops; the only way out is by EXIT;
DO WHILE...LOOP loops while "expression" is true;
DO...LOOP UNTIL loops until the expression following UNTIL is true.
Syntax:
DO
<do something >
IF <condition> THEN EXIT DO
LOOP
or
DO WHILE < condition>
<do something>
LOOP
or
DO
<do something>
LOOP UNTIL <condition>
Example:
I=0
DO
PRINT #1, “SOMETHING”
I=I+1
IF I > 5 THEN EXIT DO
LOOP
or
I=0
DO WHILE I < 6
PRINT #1, “ANYTHING”
I=I+1
LOOP
or
I=0
DO
PRINT #1, “NOTHING”
I=I+1
LOOP UNTIL I > 5
Page 46
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 4 - Macro Language
FOR / NEXT / STEP / TO
Description:
FOR initiates a FOR-NEXT loop with the variable ’counter’ initially set to ’start’ and incrementing in
’increment’ steps (default is 1) until ’counter’ equals ’finish’. NEXT defines the end of the loop, TO
defines the limit of the counter. If the increment is not 1, it must be defined with STEP.
Syntax:
FOR counter = start TO finish
<do something>
NEXT counter
or
FOR counter = start TO finish STEP increment
<do something>
NEXT counter
Example:
FOR I = 1 TO 10
PRINT #1, “THIS IS THE FOR LOOP”
NEXT I
or
FOR I = 1 TO 10 STEP 1
PRINT #1, “THIS IS THE FOR LOOP WITH STEP 1”
NEXT I
GOTO / LABEL
Description:
The command LABEL is used to define some specified entries in the program flow. The command
GOTO is used to suppress some basic lines til the specified label is reached.
Syntax:
<labelname> :
<do something>
GOTO <labelname>
Example:
PRINT #1 , “THIS IS ALWAYS OUTPUT”
GOTO MY_LABEL
PRINT #1, “THIS IS NEVER OUTPUT!!!!!!!”
MY_LABEL:
PRINT #1, “THIS IS ALSO ALWAYS OUTPUT”
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 47
Chapter 4 - Macro Language
IF / ELSEIF / ELSE / END IF / THEN
Description:
F evaluates ’expression’ and performs the THEN statement if it is true or (optionally) the ELSE statement if it is FALSE. ELSEIF statements define multi conditions. ELSE introduces always the default
condition in IF or IF...ELSEIF statements. END IF ends a multi-line IF statement.
Syntax:
IF expression THEN <do something>
or
IF expression THEN
<do something>
END IF
or
IF expression THEN
<do something>
ELSE
<do something other>
END IF
or
IF expression THEN
<do something>
ELSEIF expression THEN
<do something other>
ELSE
<do default>
END IF
Example:
IF (a < b) THEN EXIT DO
or
IF a < b THEN
PRINT #1, “a is less than b”
ELSEIF a > b then
PRINT #1, “a is greater than b”
ELSE
PRINT #1, “a is equal to b”
END IF
Page 48
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 4 - Macro Language
WEND / WHILE
Description:
WHILE initiates a WHILE-WEND loop. The loop ends with WEND. The body of the loop is repeated
til the condition is FALSE
Syntax:
WHILE expression
<do something>
WEND
Example:
I=0
WHILE I < 5
PRINT #1, “THIS IS THE WHILE LOOP”
I=I+1
WEND
4.3.4
Input/Output and Filehandling
CLOSE
Description:
CLOSE closes the file indicated by the device number.
Syntax:
CLOSE #a
where
a
=
device number of file
Example:
CLOSE # 1
EOF
Description:
EOF checks if the end of a file is reached. It returns TRUE, if the file associated with the device
number is at the end of the file, otherwise it returns FALSE.
Syntax:
EOF( a )
where
a
=
device number of file
Example:
RET = EOF (5)
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 49
Chapter 4 - Macro Language
KILL
Description:
KILL is used to delete files specified by the name.
Syntax:
KILL filename
where
filename
=
name of the file which will be removed
Example:
KILL ’C:\tmp\delete_me.log’
LINE INPUT
Description:
LINE INPUT reads complete lines from a file. The file must be opened once before.
Syntax:
LINE INPUT # device number, string
where
device number=
device number of file which is read
string
variable in which the line is stored
Example:
OPEN “C:\tmp\cPost.log” FOR INPUT AS # 3
LINE INPUT # 3 , A$
LINE INPUT # 3 , B$
CLOSE # 3
OPEN
Description:
OPEN statements are used to open files for reading or writing or both. There are two syntax forms of
the OPEN statement supported by cPost. Note that all files openend with OPEN must be closed by
CLOSE.
Syntax:
OPEN "O"|"I", #device-number, filename
or
OPEN filename FOR INPUT|OUTPUT|APPEND AS #device-number
Example:
OPEN “C:\tmp\cPost.inp” FOR INPUT AS # 3
or
OPEN “I”, #3, “C:\tmp\cPost.inp”
opens a file as an inputfile
OPEN “C:\tmp\cPost.log” FOR OUTPUT AS # 3
or
OPEN “O”, #3, “C:\tmp\cPost.log”
opens a new file as an outputfile
OPEN “C:\tmp\cPost.log” FOR APPEND AS # 3
opens an existing file at the end.
Page 50
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 4 - Macro Language
PRINT
Description:
PRINT outputs text to a file specified by device-number. Note that the file must be opened before.
Syntax:
PRINT # device-number, expressions
Example:
OPEN “C:\tmp\cPost.log” FOR INPUT AS # 3
PRINT # 3, “This is the first calling parameter:” + C_VARG$(1)
CLOSE # 3
WIDTH
Description:
WIDH defines the maximum record length of a file defined by the device number. The default value
is 128. Maximum value is 8191. Note that the file must be opened before.
Syntax:
WIDTH # device-number, length
Example:
OPEN “C:\tmp\cPost.log” FOR INPUT AS # 3
WIDTH #3, 256
PRINT # 3, “This is the first calling parameter:” + C_VARG$(1)
CLOSE # 3
4.3.5
Others
COMMON
Description:
COMMON designates global variables. All other macro variables are only local available.
Syntax:
COMMON variable [, variable...]
where
variable
=
name of the variable which should be global
Example:
COMMON XVALUE, YVALUE, TOOLNAME$
DIM
Description:
DIM specifies array variables. These have more than one element in a single dimension.
Syntax:
DIM variable(elements...)[variable(elements...)]...
Example:
DIM b(8) c(9,4)
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 51
Chapter 4 - Macro Language
ENVIRON$
Description:
ENVIRON$ return the value of the environment variable associated with the argument.
Syntax:
ENVIRON$(ename$)
where
ename$
=
name of the enviroment variable
Example:
A$ = ENVIRON$(“HOME”)
REM
Description:
REM allows remarks to be included in a macro.
Syntax:
REM <comment>
Example:
REM INITIALIZE VALUES
A=0
B=8
TROFF
Description:
TROFF switches off the trace facility for debugging
Syntax:
TROFF
TRON
Description:
TRON switches on the trace facility for debugging. This facility will print the macro name and each
line number in square brackets as the macro is executed.
Syntax:
TRON
Example:
TRON
Example for a trace:
MAC: [AV_FINI] ### Trace is ON ###
MAC: [AV_FINI] [0004] >REM ---- Scriptfile<
MAC: [AV_FINI] [0006] >FILENAME$=LEFT$(ManufacturingProgram,6)<
MAC: [AV_FINI]
..Variable: ManufacturingProgram=Manufacturing Program.1<
MAC: [AV_FINI]
..Variable: FILENAME$=Manufa<
MAC: [AV_FINI]
Set STRING Value: FILENAME$=Manufa, in Pool: CALVIN
MAC: [AV_FINI] [0007] >SCR_FILE$ = C_ISO_PATH + ’/’ + FILENAME$ + ".sbl"<
MAC: [AV_FINI] Initialize new STRING Variable: SCR_FILE$, in Pool: BIP_000_AV_FINI
MAC: [AV_FINI]
..Variable: C_ISO_PATH=X:\tmp\agievision<
Page 52
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 4 - Macro Language
MAC: [AV_FINI]
..Variable: FILENAME$=Manufa<
MAC: [AV_FINI]
..Variable: SCR_FILE$=<
MAC: [AV_FINI]
Set STRING Value: SCR_FILE$=X:\tmp\agievision/Manufa.sbl, in Pool: BIP_000_AV_FINI
MAC: [AV_FINI] [0008] >OPEN SCR_FILE$ FOR APPEND AS #1<
MAC: [AV_FINI]
..Variable: SCR_FILE$=X:\tmp\agievision/Manufa.sbl<
MAC: [AV_FINI] [0010] >PRINT #1, ’sub main’<
MAC: [AV_FINI] [0011] >PRINT #1, ’ ok = JE_Initiate’<
MAC: [AV_FINI] [0012] >PRINT #1, ’ if (ok=0) then’<
MAC: [AV_FINI] [0014] >OPEN ’scr.tail’ FOR INPUT AS #2<
MAC: [AV_FINI] [0015] >I=0<
MAC: [AV_FINI] Initialize new NUMBER Variable: I, in Pool: BIP_000_AV_FINI
MAC: [AV_FINI]
Set NUMBER Value: I=0.000000, in Pool: BIP_000_AV_FINI
MAC: [AV_FINI]
..Variable: I=0.000000
MAC: [AV_FINI] [0016] >WHILE I < C_CONTOUR_NB + 1<
MAC: [AV_FINI]
..Variable: C_CONTOUR_NB=2.000000
MAC: [AV_FINI]
..Variable: I=0.000000
MAC: [AV_FINI] [0017] >LINE INPUT #2,A$<
MAC: [AV_FINI] Initialize new STRING Variable: A$, in Pool: BIP_000_AV_FINI
MAC: [AV_FINI]
..Variable: A$=<
MAC: [AV_FINI] [0018] >PRINT #1, ’ ’ + A$<
MAC: [AV_FINI]
..Variable: A$=werkstueck<
MAC: [AV_FINI] [0019] >I = I + 1<
MAC: [AV_FINI]
..Variable: I=0.000000
MAC: [AV_FINI]
Set NUMBER Value: I=1.000000, in Pool: BIP_000_AV_FINI
MAC: [AV_FINI]
..Variable: I=0.000000
MAC: [AV_FINI] [0020] >WEND<
MAC: [AV_FINI] [0016] >WHILE I < C_CONTOUR_NB + 1<
MAC: [AV_FINI]
..Variable: C_CONTOUR_NB=2.000000
MAC: [AV_FINI]
..Variable: I=1.000000
MAC: [AV_FINI] [0017] >LINE INPUT #2,A$<
MAC: [AV_FINI]
..Variable: A$=werkstueck<
MAC: [AV_FINI] [0018] >PRINT #1, ’ ’ + A$<
MAC: [AV_FINI]
..Variable: A$=Manufa01<
MAC: [AV_FINI] [0019] >I = I + 1<
MAC: [AV_FINI]
..Variable: I=1.000000
MAC: [AV_FINI]
Set NUMBER Value: I=2.000000, in Pool: BIP_000_AV_FINI
MAC: [AV_FINI]
..Variable: I=1.000000
MAC: [AV_FINI] [0020] >WEND<
MAC: [AV_FINI] [0016] >WHILE I < C_CONTOUR_NB + 1<
MAC: [AV_FINI]
..Variable: C_CONTOUR_NB=2.000000
MAC: [AV_FINI]
..Variable: I=2.000000
MAC: [AV_FINI] [0017] >LINE INPUT #2,A$<
MAC: [AV_FINI]
..Variable: A$=Manufa01<
MAC: [AV_FINI] [0018] >PRINT #1, ’ ’ + A$<
MAC: [AV_FINI]
..Variable: A$=Manufa02<
MAC: [AV_FINI] [0019] >I = I + 1<
MAC: [AV_FINI]
..Variable: I=2.000000
MAC: [AV_FINI]
Set NUMBER Value: I=3.000000, in Pool: BIP_000_AV_FINI
MAC: [AV_FINI]
..Variable: I=2.000000
MAC: [AV_FINI] [0020] >WEND<
MAC: [AV_FINI] [0016] >WHILE I < C_CONTOUR_NB + 1<
MAC: [AV_FINI]
..Variable: C_CONTOUR_NB=2.000000
MAC: [AV_FINI]
..Variable: I=3.000000
MAC: [AV_FINI] [0021] >CLOSE #2<
MAC: [AV_FINI] [0022] >KILL ’scr.tail’<
MAC: [AV_FINI] [0023] >PRINT #1, ’ ok=JE_ClosePiece(je_piece)<
MAC: [AV_FINI] [0024] >PRINT #1, ’ else’<
MAC: [AV_FINI] [0025] >PRINT #1, ’ stop’<
MAC: [AV_FINI] [0026] >PRINT #1, ’ end if’<
MAC: [AV_FINI] [0027] >PRINT #1, ’end sub’<
MAC: [AV_FINI] [0029] >CLOSE #1<
MAC: [AV_FINI] [0031] >TROFF<
MAC: [AV_FINI] ### Trace is OFF ###
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 53
Chapter 4 - Macro Language
VARS
Description:
VARS output all current pool variables in the lock file. It works like the APT command DUMP.
Syntax:
VARS
Example:
VARS
Page 54
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 4 - Macro Language
4.4
Additional cPost Functions (CF_xxx)
These functions are a cPost extension to the normal BASIC commands. These commands are
used to create additional input (CF_APTTXT), additional output in the report file
(CF_REPTXT). They can also modfiy the handling of the APT input (CF_SETCOMODE) or redefine the parameters from the parameterfile (CF_SETPAR****, CF_GETPAR***).
4.4.1
cPost Parameter Definition Functions
These functions support the modification of the cPost definition parameters of the parameterfile. All modifyable parameters are stored as:
•
•
•
•
•
addresses (ADR)
integers (I4)
doubles (R8)
strings (STR)
machine data (TDB)
Each kind of parameter has a special GET and PUT function. The first calling argument for all
these functions is always the parameter id, which is the internal parameter id without the classification.
For example:
The internal parameter id for the milling spindle speed is “ADR_SPINDLE_SPEED”. The classification is “ADR_”, that means:
All Data can only be read or modified with the CF_GETPARADR* or CF_SETPARADR* functions. The first argument for all functions is “SPINDLE_SPEED”.
The “CF_SETPAR*” functions have also an additional “ADD” option. This option is necessary
to change parameters with dependencies, like the number of spindle range. If this number is
changed, the maximum and minimum spindl speeds must also be changed. You must set first
all necessary parameters with the “ADD” option and then call CF_UPDATEPAR() as a second
step.
For example:
OLD$ = CF_SETPARTDB$("MFG_SPNDL_RNG_NB","2","ADD")
OLD$ = CF_SETPARTDB$("MFG_SPNDL_SPD_VR","CONTINUOUS;CONTINUS","ADD")
OLD$ = CF_SETPARTDB$("MFG_MIN_SPINDLE","100;1000","ADD")
OLD$ = CF_SETPARTDB$("MFG_MAX_SPINDLE","1000;2000","ADD")
CF_UPDATEPAR()
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 55
Chapter 4 - Macro Language
4.4.1.1
CF_GETPARADR$
Description:
Get the value of the adress parameter from the identifier
Syntax:
SVAL$ = CF_GETPARADR$ (PARAM$)
Type:
Function
Input:
PARAM$
STRING
Parameter id
SVAL$
STRING
address string
Return:
Error (C_IER):
90247
90248
90249
32113
Not enough parameters to function
Too many parameters to function
Error: Argument to function must be a string
unknown parameter
Example:
SVAL$ = CF_GETPARADR$ ("1ST_COORDINATE")
4.4.1.2
CF_GETPARADRTAB
Description:
Get the tabulator value of the adress parameter from the identifier
Syntax:
RVAL = CF_GETPARADRTAB (PARAM$)
Type:
Function
Input:
PARAM$
STRING
Parameter id
RVAL
NUMBER Tabulator value
Output:
Error (C_IER):
90247
90248
90249
32113
Not enough parameters to function
Too many parameters to function
Error: Argument to function must be a string
unknown parameter
Example:
RVAL = CF_GETPARADRTAB ("1ST_COORDINATE")
Page 56
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 4 - Macro Language
4.4.1.3
CF_GETPARADRP1
Description:
Get the major priority value of the adress parameter from the identifier
Syntax:
RVAL = CF_GETPARADRP1 (PARAM$)
Type:
Function
Input:
PARAM$
STRING
Parameter id
RVAL
NUMBER Prio 1 value
Return:
Error (C_IER):
90247
90248
90249
32113
Not enough parameters to function
Too many parameters to function
Error: Argument to function must be a string
unknown parameter
Example:
RVAL = CF_GETPARADRP1 ("1ST_COORDINATE")
4.4.1.4
CF_GETPARADRP2
Description:
Get the minor priority value of the adress parameter from the identifier
Syntax:
RVAL = CF_GETPARADRP2 (PARAM$)
Type:
Function
Input:
PARAM$
STRING
Parameter id
RVAL
NUMBER Prio 2 value
Return:
Error (C_IER):
90247
90248
90249
32113
Not enough parameters to function
Too many parameters to function
Error: Argument to function must be a string
unknown parameter
Example:
RVAL = CF_GETPARADRP2 ("1ST_COORDINATE")
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 57
Chapter 4 - Macro Language
4.4.1.5
CF_GETPARADRMOD
Description:
Get the modality flag of the adress parameter from the identifier
Syntax:
RVAL = CF_GETPARADRMOD (PARAM$)
Type:
Function
Input:
PARAM$
STRING
Parameter id
RVAL
NUMBER Modality flag
Return:
Error (C_IER):
90247
90248
90249
32113
Not enough parameters to function
Too many parameters to function
Error: Argument to function must be a string
unknown parameter
Example:
RVAL = CF_GETPARADRMOD ("1ST_COORDINATE")
4.4.1.6
CF_GETPARADRFMT$
Description:
Get the format string of the adress parameter from the identifier
Syntax:
SVAL$ = CF_GETPARADRFMT$ (PARAM$)
Type:
Function
Input:
PARAM$
STRING
Parameter id
SVAL$
STRING
Format string
Output:
Error (C_IER):
90247
90248
90249
32113
Not enough parameters to function
Too many parameters to function
Error: Argument to function must be a string
unknown parameter
Example:
SVAL$ = CF_GETPARADRFMT$ ("1ST_COORDINATE")
Page 58
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 4 - Macro Language
4.4.1.7
CF_GETPARINT
Description:
Get the integer value of the parameter from the identifier
Syntax:
IVAL = CF_GETPARINT (PARAM$)
Type:
Function
Input:
PARAM$
STRING
Parameter id
IVAL
NUMBER integer value
Output:
Error (C_IER):
90247
90248
90249
32113
Not enough parameters to function
Too many parameters to function
Error: Argument to function must be a string
undefined parameter
Example:
IVAL = CF_GETPARINT ("SKIP_FROM")
4.4.1.8
CF_GETPARREAL
Description:
Get the real value of the parameter from the identifier
Syntax:
RVAL = CF_GETPARREAL (PARAM$)
Type:
Function
Input:
PARAM$
STRING
Parameter id
RVAL
NUMBER real value
Return:
Error (C_IER):
90247
90248
90249
32113
Not enough parameters to function
Too many parameters to function
Error: Argument to function must be a string
undefined parameter
Example:
RVAL = CF_GETPARREAL ("DWELL_TIME_FACTOR")
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 59
Chapter 4 - Macro Language
4.4.1.9
CF_GETPARSTR$
Description:
Get the string value of the parameter from the identifier
Syntax:
SVAL$ = CF_GETPARSTR$ (PARAM$)
Type:
Function
Input:
PARAM$
STRING
Parameter id
SVAL$
STRING
string value
Return:
Error (C_IER):
90247
90248
90249
32112
Not enough parameters to function
Too many parameters to function
Error: Argument to function must be a string
undefined parameter
Example:
SVAL$ = CF_GETPARSTR$ ("END_OF_RECORD_SYMBOL")
4.4.1.10
CF_GETPARTDB$
Description:
Get the string value of a TDB parameter from the identifier
Syntax:
SVAL$ = CF_GETPARTDB$ (PARAM$)
Type:
Function
Input:
PARAM$
STRING
Parameter id
SVAL$
STRING
string value
Return:
Error (C_IER):
90247
90248
90249
32112
Not enough parameters to function
Too many parameters to function
Error: Argument to function must be a string
undefined parameter
Example:
SVAL$ = CF_GETPARTDB$ ("MFG_CLASS_NAME")
Page 60
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 4 - Macro Language
4.4.1.11
CF_SETPARADR$
Description:
Set a address parameter from the identifier
Syntax:
SOLD$ = CF_SETPARADR$ (PARAM$, SNEW$)
SOLD$ = CF_SETPARADR$ (PARAM$, SNEW$, “ADD”)
Type:
Function
Input:
PARAM$
SNEW$
“ADD”
STRING Parameter id
NUMBER new address value
STRING Optional option
SOLD$
STRING
90247
90248
90249
32113
Not enough parameters to function
Too many parameters to function
Error: Argument to function must be a string
undefined parameter
Return:
old address value
Error:
Example:
SOLD$ = CF_SETPARADR$ ("1ST_COORDINATE", "U")
4.4.1.12
CF_SETPARADRTAB
Description:
Set the tabulator value of the parameter from the identifier
Syntax:
IOLD = CF_SETPARADRTAB (PARAM$, INEW)
Type:
Function
Input:
PARAM$
INEW
STRING Parameter id
NUMBER new tabulator value
IOLD
NUMBER old tabulator value
Return:
Error (C_IER):
90247
90248
90249
90355
32113
Not enough parameters to function
Too many parameters to function
Error: Argument to function must be a string
Argument to function must be a number
undefined parameter
Example:
IOLD = CF_SETPARADRTAB ("1ST_COORDINATE", 12)
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 61
Chapter 4 - Macro Language
4.4.1.13
CF_SETPARADRP1
Description:
Set the priority 1 value of the address parameter from the identifier
Syntax:
IOLD = CF_SETPARADRP1 (PARAM$, INEW)
Type:
Function
Input:
PARAM$
INEW
STRING Parameter id
NUMBER new prio 1 value
IOLD
NUMBER old prio 1 value
Return:
Error (C_IER):
90247
90248
90249
90355
32113
Not enough parameters to function
Too many parameters to function
Error: Argument to function must be a string
Argument to function must be a number
undefined parameter
Example:
IOLD = CF_SETPARADRP1 ("1ST_COORDINATE", 20)
4.4.1.14
CF_SETPARADRP2
Description:
Set the priority 2 value of the address parameter from the identifier
Syntax:
IOLD = CF_SETPARADRP2 (PARAM$, INEW)
Type:
Function
Input:
PARAM$
INEW
STRING Parameter id
NUMBER new prio 2 value
IOLD
NUMBER old prio 2 value
Return:
Error (C_IER):
90247
90248
90249
90355
32113
Not enough parameters to function
Too many parameters to function
Error: Argument to function must be a string
Argument to function must be a number
undefined parameter
Example:
IOLD = CF_SETPARADRP2 ("1ST_COORDINATE", 62)
Page 62
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 4 - Macro Language
4.4.1.15
CF_SETPARADRMOD
Description:
Set the modality value of the parameter from the identifier
Syntax:
IOLD = CF_SETPARADRMOD (PARAM$, INEW)
Type:
Function
Input:
PARAM$
INEW
STRING Parameter id
NUMBER new modality value (0=FALSE, else TRUE)
IOLD
NUMBER old modality value (0=FALSE, else TRUE)
Return:
Error (C_IER):
90247
90248
90249
32113
Not enough parameters to function
Too many parameters to function
Error: Argument to function must be a string
undefined parameter
Example:
IOLD = CF_SETPARADRMOD ("1ST_COORDINATE", 0)
4.4.1.16
CF_SETPARADRFMT$
Description:
Set a format to an address value of the parameter from the identifier
Syntax:
SOLD$ = CF_SETPARADRFMT$ (PARAM$, SNEW$)
Type:
Function
Input:
PARAM$
SNEW$
STRING
STRING
Parameter id
new format string
SOLD$
STRING
old format string
Return:
Error (C_IER):
90247
90248
90249
32113
Not enough parameters to function
Too many parameters to function
Error: Argument to function must be a string
undefined parameter
Example:
SOLD$ = CF_SETPARADRFMT$ ("1ST_COORDINATE", "N1.-3%0")
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 63
Chapter 4 - Macro Language
4.4.1.17
CF_SETPARINT
Description:
Set an integer value of the parameter from the identifier
Syntax:
IOLD = CF_SETPARINT (PARAM$, INEW)
IOLD = CF_SETPARINT (PARAM$, INEW, “ADD”)
Type:
Function
Input:
PARAM$
INEW
“ADD”
STRING Parameter id
NUMBER new integer value
STRING Optional option
IOLD
NUMBER old error number
Return:
Error (C_IER):
90247
90248
90249
90355
32113
Not enough parameters to function
Too many parameters to function
Error: Argument to function must be a string
Argument to function must be a number
undefined parameter
Example:
IOLD = CF_SETPARINT ("SKIP_FROM", 0)
4.4.1.18
CF_SETPARREAL
Description:
Set a real value of the parameter from the identifier
Syntax:
ROLD = CF_SETPARREAL(PARAM$, RNEW)
ROLD = CF_SETPARREAL(PARAM$, RNEW,”ADD”)
Type:
Function
Input:
PARAM$
RNEW
STRING Parameter id
NUMBER new real value
ROLD
NUMBER old error number
Return:
Error (C_IER):
90247
90248
90249
90355
32113
Not enough parameters to function
Too many parameters to function
Error: Argument to function must be a string
Argument to function must be a number
undefined parameter
Example:
ROLD = CF_SETPARREAL ("DWELL_TIME_FACTOR", 2.0)
Page 64
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 4 - Macro Language
4.4.1.19
CF_SETPARSTR$
Description:
Set a string value of the parameter from the identifier
Syntax:
SOLD$ = CF_SETPARSTR$ (PARAM$, SNEW$)
SOLD$ = CF_SETPARSTR$ (PARAM$, SNEW$, “ADD”)
Type:
Function
Input:
PARAM$
SNEW$
“ADD”
STRING
STRING
STRING
Parameter id
New string value
Optional ADD option
SOLD$
STRING
old string value
Return:
Error (C_IER):
90247
90248
90249
32113
Not enough parameters to function
Too many parameters to function
Error: Argument to function must be a string
undefined parameter
Example:
SOLD$ = CF_SETPARSTR$ ("END_OF_RECORD_SYMBOL", "*")
4.4.1.20
CF_SETPARTDB$
Description:
Set a value of a TDB parameter from the identifier. All values must be input as strings.
Syntax:
SOLD$ = CF_SETPARTDB$ (PARAM$, SNEW)
SOLD$ = CF_SETPARTDB$ (PARAM$, SNEW, “ADD”)
Type:
Function
Input:
PARAM$
SNEW
“ADD”
STRING
STRING
STRING
Parameter id
new TDB value (automatic conversion internally)
Optional “ADD” option
SOLD$
STRING
old TDB value
Return:
Error (C_IER):
90247
90248
90249
32113
Not enough parameters to function
Too many parameters to function
Error: Argument to function must be a string
undefined parameter
Example:
SOLD$ = CF_SETPARTDB$ ("MFG_MAX_TL_NB", “34”)
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 65
Chapter 4 - Macro Language
4.4.1.21
CF_UPDATEPAR
Description:
Update internal structures after redefintion of postprocessor parameters with CF_SETPAR* functions with the “ADD” option.
Syntax:
I = CF_UPDATEPAR()
Type:
Function
Input:
Return:
I
NUMBER Error code
Error (C_IER):
90248
Too many parameters to function
Example:
SOLD$ = CF_SETPARTDB$ ("MFG_MAX_TL_NB", “34”,”ADD”)
I = CF_UPDATEPAR()
4.4.2
cPost I/O Functions
4.4.2.1
CF_APTTXT
Description:
Insert and interpretation of a new APT line in the APT runtime structure. The APT line is created at
call position in macro, but the post executes it not until the complete macro is run. This is very
important. All data from this aptline is only available after the macro is finished.
Syntax:
CF_APTTXT APTLINE$
Type:
Command
Input:
APTLINE$
STRING
APT line which is insert
Example:
CF_APTTXT “GOTO/0,0” + C_VARG$(3)
4.4.2.2
CF_ERROR
Description:
Output of error messages and warnings with details of the severity levels in the runtime report. The
cPost run stops if the severity level of the error is 5.
Syntax:
RC = CF_ERROR (ISEV, ERRMSG$)
Type:
Function
Page 66
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 4 - Macro Language
Input:
ISEV
ERRMSG$
NUMBER Severity level (1-Warning ... 5-Error)
STRING Error message
RC
NUMBER Error number
Return:
Error (C_IER):
90247
90248
90249
90355
32106
32107
32108
32109
32110
Not enough parameters to function
Too many parameters to function
Error: Argument to function must be a string
Argument to function must be a number
Error with ISEV=1
Error with ISEV=2
Error with ISEV=3
Error with ISEV=4
Error with ISEV=5
Example:
RC = CF_ERROR (5, “FATAL ERROR, PROGRAM ABORTED”)
4.4.2.3
CF_FMTVAL$
Description:
Conversion of a number in a string variable with formating. The formatting is defined in cPost format
syntax.
Syntax:
SVAL$ = CF_FMTVAL$ (RVAL, FORMAT$)
Type:
Function
Input:
RVAL
FORMAT$
NUMBER number which will be formated
STRING cPost-Formatstring
SVAL$
STRING
Return:
formated number
Error (C_IER):
90247
90248
90249
90355
32026
32027
32028
32029
32030
Not enough parameters to function
Too many parameters to function
Error: Argument to function must be a string
Argument to function must be a number
Empty format definition string
Wrong format symbol in definition
Invalid character in format string
Min-Value greater than Max-Value
Outstr is NULL pointer
Example:
RVAL = 1.234
SVAL$ = CF_FMTVAL$ (RVAL, “N1.3%3”)
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 67
Chapter 4 - Macro Language
4.4.2.4
CF_REPTXT
Description:
Create and insert a report line in the log file.
Syntax:
CF_REPTXT REPLINE$
Type:
Command
Input:
REPLINE$
STRING
Report line which is insert
Example:
CF_REPTXT “This is output directly in the report file” + C_VARG$(3)
4.4.2.5
CF_MOD_SETADR$
Description:
Setting the internal data for the modality check of all address parameters (ADR_*). If the second
argument is a STRING, this value is direct set. If it is a NUMBER, the value will be formatted with its
format first and then set.
Syntax:
OLD$ = CF_MOD_SETADR$ (ID$, VALUE$) or
OLD$ = CF_MOD_SETADR$ (ID$, VALUE)
Type:
Function
Input:
ID$
VALUE$
or
VALUE
STRING
STRING
OLD$
STRING
Parameter ID
New value already formatted
NUMBER New value
Return:
Old value
Error (C_IER):
90247
90248
Not enough parameters to function
Too many parameters to function
Example:
REM Delete Variable to check G96/G97 SFM or RPM
OLD$ = CF_MOD_SETADR$("CONST_CUTTING_SPEED_ON","")
REM Set SPINDL CLW/CCLW command to CCLW
S$ = CF_GETPARADR$("SPINDLE_COUNTER_CLOCKWISE")
OLD$ = CF_MOD_SETADR$("SPINDLE_CLOCKWISE",S$)
REM Set the spindle speed to 5432.1234 (value will be formatted internal)
OLD$ = CF_MOD_SETADR$("SPINDLE_SPEED",5432.1234)
REM Set the spindle speed to a fixed value (no internal formatting)
OLD$ = CF_MOD_SETADR$("SPINDLE_SPEED","S5432")
Page 68
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 4 - Macro Language
4.4.3
cPost Control Functions
4.4.3.1
CF_GETAPTLINE$
Description:
Get the complete APT record to the pointer of the object.
Syntax:
S$ = CF_GETAPTLINE$ (PCO)
Type:
Function
Input:
PCO
NUMBER Pointer to object (return value from CF_GETNXTCO() function)
S$
STRING
Return:
Complete APT record of this object
Error (C_IER):
90247
90248
90355
Not enough parameters to function
Too many parameters to function
Argument to function must be a number
Example:
PCO = CF_GETNXTCO (-1, “COORD”, “GOTO”)
PCO is set to the internal pointer of the next RAPID motion.
S$ = CF_GETAPTLINE$ (PCO)
S$ is set to the APT record of this pointer “GOTO/......”.
4.4.3.2
CF_GETNXTCO
Description:
Get the pointer to the current/next command-object. Primary and secundary objecttype can be indicated (Defaulttype = NO_TYPE). If more than one primary objecttype is defined, this is a disjunction
(OR condition). The relation between APT command and object type is listed in the appendix see
“APPENDIX” on page 321.
For example: the APT command GOTO has the primary object type PTYP_COORD and the
secundary object type STYP_GOTO. The input parameters for the CF_GETNXTCO call are these
types without the first 4 letters: CF_GETNXTCO (-1, ”COORD”, ”GOTO”).
Syntax:
PCO = CF_GETNXTCO (PCO0, PTYP$, STYP$)
PCO = CF_GETNXTCO (PCO0, PTYP1$, STYP1$, PTYP2$, STYP2$)
PCO = CF_GETNXTCO (PCO0, PTYP1$, STYP1$, PTYP2$, STYP2$, PTYP3$, STYP3$)
Type:
Function
Input:
PCO0
© CENIT AG Systemhaus
cPost Documentation V1R6
NUMBER (optional) pointer to the command,
from which the search should start.
Special values are:
-1 = pointer to the next command
0 = pointer to actual pointer
Page 69
Chapter 4 - Macro Language
PTYP$
STRING
(optional) primary object type
default = “NO_TYPE”
(optional) secundary object type
DEFAULT = “NO_TYPE”
STYP$
STRING
PCO
NUMBER pointer to command object
(-1 = no next command)
Return:
Error (C_IER):
90247
90248
90249
90355
32111
32112
Not enough parameters to function
Too many parameters to function
Error: Argument to function must be a string
Argument to function must be a number
undefined primary type
undefined secondary type
Example:
PCO = CF_GETNXTCO (-1, “COORD”, “RAPID”)
PCO is set to the internal pointer of the next RAPID motion.
PCO = CF_GETNXTCO (-1, “COORD”, “RAPID”,”COORD”, “GOTO”)
PCO is set to the internal pointer of the next RAPID or GOTO motion.
4.4.3.3
CF_GETPTYPE$
Description:
Get the internal primary object type. The input parameter is the return value of the CF_GETNXTCO
function. The return values are listed in the appendix.
Syntax:
S$ = CF_GETPTYPE$ (PCO)
Type:
Function
Input:
PCO
NUMBER Pointer to object (return value from CF_GETNXTCO() function)
S$
STRING
Return:
Primary object type
Error (C_IER):
90247
90248
90355
Not enough parameters to function
Too many parameters to function
Argument to function must be a number
Example:
PCO = CF_GETNXTCO (-1, “NO_TYPE”, “NO_TYPE”)
PCO is set to the internal pointer of the next object.
S$ = CF_GETPTYPE$ (PCO)
S$ is set to the primary object type. If this is GOTO motion, the type is PTYP_COORD and S$
is set to “COORD”.
Page 70
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 4 - Macro Language
4.4.3.4
CF_GETSTATE
Description:
Get the runtime state flag or actual status of the program.
The possible parameter values and the return values are listed in the Appendix see “APPENDIX” on
page 321.
Syntax:
RC = CF_GETSTATE (PARAM$)
Type:
Function
Input:
PARAM$
STRING
Parameter id
RC
NUMBER status
Return:
Error (C_IER):
32105
90247
90248
90249
Unknown Keyword to function
Not enough parameters to function
Too many parameters to function
Argument to function must be a string
Example:
IF CF_GETSTATE (“MULTAX”) = 0
CF_APTTXT “PPRINT/ MULTAX IS OFF”
ELSE
CF_APTTXT “PPRINT/ SPECIAL LOADTL PROCESSING”
END IF
4.4.3.5
CF_GETSTYPE$
Description:
Get the internal secundary object type. The input parameter is the return value of the
CF_GETNXTCO function. The return values are listed in the appendix.
Syntax:
S$ = CF_GETSTYPE$ (PCO)
Type:
Function
Input:
PCO
NUMBER Pointer to object (return value from CF_GETNXTCO() function)
S$
STRING
Return:
Secundary object type
Error (C_IER):
90247
90248
90355
© CENIT AG Systemhaus
cPost Documentation V1R6
Not enough parameters to function
Too many parameters to function
Argument to function must be a number
Page 71
Chapter 4 - Macro Language
Example:
PCO = CF_GETNXTCO (-1, “NO_TYPE”, “NO_TYPE”)
PCO is set to the internal pointer of the next object.
S$ = CF_GETSTYPE$ (PCO)
S$ is set to the secundary object type. If this is GOTO motion, the type is STYP_GOTO and
S$ is set to “GOTO”.
4.4.3.6
CF_PUTCO2POOL
Description:
This command is used to put the parameters of a cPost object in the variable pool. The user can
define the variable names.
Syntax:
RC = CF_PUTCO2POOL (PCO, C_NAME$)
Type:
Function
Input:
PCO
C_NAME$
NUMBER Pointer to cPost object
STRING variable name
RC
NUMBER return value
Return:
Error (C_IER):
90247
90248
90249
90355
Not enough parameters to function
Too many parameters to function
Error: Argument to function must be a string
Argument to function must be a number
Example:
Put the variable of the next COOLNT command in the variable pool
PCO = CF_GETNXTCO (-1, "COOLNT", "NO_TYPE")
RC = CF_PUTCO2POOL (PCO, "C_TMP")
if the COOLNT command is: COOLNT/MIST,ON, these sequence generate the following pool
variables:
C_TMPC
=
3
C_TMP$(1) =
’COOLNT’
C_TMPR(1) =
0.0
C_TMP$(2) =
’MIST’
C_TMPR(2) =
0.0
C_TMP$(3) =
’ON’
C_TMPR(3) =
0.0
4.4.3.7
CF_SETCOMODE$
Description:
This command is used to set processing mode of cPost objects. It has only effect on not interpreted
objects. The mode of an object defines the handling by cPost ( no interpretation, no replacing by a
macro).
Page 72
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 4 - Macro Language
Syntax:
SOLD$ = CF_SETCOMODE$ (PCO, SNEW$)
Type:
Function
Input:
PCO
SNEWS
NUMBER Pointer to cPost object
STRING processing mode
“SKIP” -> CO will not be interpreted
“NOMACRO” -> CO will not be interpreted as a macro
“DEFAULT” -> reset processing mode
SOLD$
STRING
Return:
actual processing mode
Error (C_IER):
90247
90248
90249
90355
32114
Not enough parameters to function
Too many parameters to function
Error: Argument to function must be a string
Argument to function must be a number
undefined processing mode
Example:
next RAPID must not be interpreted
PCO = CF_GETNXTCO (-1, "COORD", "RAPID")
SOLD$ = CF_SETCOMODE$ (PCO, "SKIP")
4.4.3.8
CF_SETSTATE
Description:
Set the runtime state flag or actual status of the program.
The possible parameter values and the return values are listed in the Appendix. ##### Baerbel####
.
Syntax:
RC = CF_SETSTATE (PARAM$, INEW)
Type:
Function
Input:
PARAM$
INEW
STRING Parameter id
NUMBER New value
RC
NUMBER Old value
Return:
Error (C_IER):
32105
90247
90248
90249
Unknown Keyword to function
Not enough parameters to function
Too many parameters to function
Argument to function must be a string
Example:
IOLD = CF_SETSTATE (“MULTAX”,0)
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 73
Chapter 4 - Macro Language
4.4.3.9
CF_VAR_EXISTS
Description:
This function is used tho check the existence of a variable or the index of an array. If the variable is
found, 0 is return. If the variable is not found, the return value is 1.
Syntax:
RC = CF_VAR_EXISTS(VNAME$)
Type:
Function
Input:
VNAME$
STRING
Variable name
RC
NUMBER 0: Variable exists, 1: Variable not found
Return:
Error (C_IER):
90247
90248
90249
Not enough parameters to function
Too many parameters to function
Error: Argument to function must be a string
Example:
RC = CF_VAR_EXISTS (“C_AXIS_X_NXT_POS”)
RC = CF_VAR_EXISTS (“C_TLNO_TL_NUMBER(1)”)
4.5
•
Macro examples
Example for COOLNT Macro (special output for the COOLNT/THRU,ON)
REM TRON
IF C_VARG$(1) = ’THRU’ THEN
IF C_VARG$(2) = ’OFF’ THEN
CF_APTTXT ’COOLNT/’ + C_VARG$(1) + ’ , ’ + C_VARG$(2)
ELSE
CF_APTTXT ’AUXFUN/15’ + CF_FMTVAL$(C_VARGR(2)/10,’*INT’)
END IF
ELSE
IF C_VARGC = 2 THEN
CF_APTTXT ’COOLNT/’ + C_VARG$(1) + ’ , ’ + C_VARG$(2)
ELSE
CF_APTTXT ’COOLNT/’ + C_VARG$(1)
END IF
END IF
REM TROFF
Page 74
+ ’ , NEXT’
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 4 - Macro Language
•
Example for SETPLN Macro
REM TRON
IF C_VARG$(1) = ’ON’ THEN
X$ = CF_FMTVAL$(C_AXIS_TLVEC_X_CUR,"*APT_COORD")
Y$ = CF_FMTVAL$(C_AXIS_TLVEC_Y_CUR,"*APT_COORD")
Z$ = CF_FMTVAL$(C_AXIS_TLVEC_Z_CUR,"*APT_COORD")
CF_APTTXT ’DEFPLN/’ + X$ + ’,’ + Y$ + ’,’ + Z$
CF_APTTXT ’SETPLN/ON’
CF_APTTXT ’ORIGIN/NCDATA,0,0,0’
ORIGX_MERK = C_ORIGIN_X_AXIS
ORIGY_MERK = C_ORIGIN_Y_AXIS
ORIGZ_MERK = C_ORIGIN_Z_AXIS
CF_APTTXT ’ORIGIN/0,0,0’
ELSEIF C_VARG$(1) = ’OFF’ THEN
IF A_GEKLEMMT = 1 THEN
CF_APTTXT ’INSERT/M16’
A_GEKLEMMT=0
END IF
IF B_GEKLEMMT = 1 THEN
CF_APTTXT ’INSERT/M11’
B_GEKLEMMT=0
END IF
CF_APTTXT ’SETPLN/OFF’
CF_APTTXT ’ORIGIN/NCDATA,0,0,220’
X$ = CF_FMTVAL$(ORIGX_MERK,’*APT_COORD’)
Y$ = CF_FMTVAL$(ORIGY_MERK,’*APT_COORD’)
Z$ = CF_FMTVAL$(ORIGZ_MERK,’*APT_COORD’)
CF_APTTXT ’ORIGIN/’ + X$ + ’,’ + Y$ + ’,’ + Z$
END IF
REM TROFF
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 75
Chapter 4 - Macro Language
Page 76
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5
cPost Tab Pages
5.1
HEADER INFORMATION
5.1.1
PPHEADER
•
License (HEADER_PP_LICENSE):
This read only field contains the license informations of the parameterfile.
1st part: license type of the loaded parameterfile.
2nd part: new license type, if the parameterfile is saved.
•
Version (HEADER_PP_VERSION):
This read only field contains the version number of the parameterfile.
1st part: actual version of the loaded parameterfile.
2nd part: new version, if the parameterfile is saved.
•
Date (HEADER_DATE):
This read only field contains the last modification date of the Post Processor file. The format is:
Day.Month.Year (Hour:Minutes:Seconds)
•
Created by(HEADER_CREATED_BY)
This field can be used to define the name of creator of the Post Processor file.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 77
Chapter 5 - cPost Tab Pages
5.1.2
•
DOCUMENTATION
Documentation (HEADER_DOCUMENTATION):
Modifications of the parameterfile can be documented here.
Example:
01.01.2002 by J. Schardt
command of “RAPID” changed.
Page 78
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.2
GLOBAL SETTINGS
You can define global number formats and the output control strings for the sequences in these
tab pages.
5.2.1
NUMBER FORMAT
The number formats are necessary for the output of each number variable. If you define here
a global format, you can refer everywhere in the pp to this format. This is very helpful for later
changes in the output format.
•
Defaul format (STR_FORMATX):
This format is used, if no other one is defined.
•
List of defined formats:
This list shows all defined formats.
•
Set default format:
Sets the selected format of the list to the default format
•
Remove format:
A selected format will be removed.
•
Add one format:
Add a new format to the list or modify an old one. In this case you must enter the old name.
Example for a new format definition:
•
Push the button “Add one format”
•
Define the format with the panel spinners and switches
•
Push the button “Add...”
•
Activate the textfield at the top of this panel
•
Enter the new format name
•
Press the return key
•
Push the button “OK”
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 79
Chapter 5 - cPost Tab Pages
5.2.2
SEQUENCE SETTINGS
The parameter of this tab page are necessary for the iso block definition. You can define the
ids for line break, no sequence number and so on. These parameters are fixed, that means
they could not be modified with macro functions.
•
Block sequence: not first (STR_BLOCK_NOT_FIRST):
This parameter defines the character which is used in sequences to mark the start and the end of
the part of the sequence, which is suppressed at the first output. The default value is ’:’. e.g. ...;$;this
character;’NOT OUTPUT AT 1ST CALL’;$;this character;....
Attention: This parameter must not be modified with the macro function CF_SetParStr$.
•
Block sequence: new line (STR_BLOCK_NEW_LINE):
This parameter defines the character which is used in sequences to define a line break. The default
value is ’$’.
Attention: This parameter must not be modified with the macro function CF_SetParStr$.
•
Block sequence: no recnr (STR_BLOCK_NO_RECNR):
This parameter defines the character which is used in sequences to mark the start and the end of
the sequence, which is output without a record number. The deafult value is ’?’. e.g. ...;$;this character;’LINE WITHOUT RECORD NUMBER’;$;this character;....
Attention: This parameter must not be modified with the macro function CF_SetParStr$.
•
Block sequence : blank line (STR_BLOCK_BLANK_LINE):
This parameter defines the character which is used in sequences to output an empty line in the NC
program. The default value is ’LZ’.
Attention: This parameter must not be modified with the macro function CF_SetParStr$.
•
Block sequence: table (STR_BLOCK_TABLE):
This parameter defines the character which is used in sequences to mark the start and the end of
the sequence, which is output as a table. The default value is ’#’.
e.g. ...;$;this character;TABLE(varname1,varname2,...);term1;fmt1;...;this character;....
All table variables must be defined in TABLE(...).
A simple tool table (only tool number and radius) is defined like follows:
;#;TABLE(C_TLNO_TL_NUMBER,C_TLNO_TL_DIAMETER);’T’;C_TLNO_TL_NUMBER_C;N2.0%0;’ R’;C_TLNO_TL_DIAMETER_C/2;N1.3%0;$;#;
Attention: This parameter must not be modified with the macro function CF_SetParStr$.
•
Variable identifier in Data blocks (STR_VAR_IDENTIFIER):
This parameter defines the symbol used in the list of origins definition sequence to identify variables.
They will be replaced on runtime by their actual value.
Attention: This parameter must not be modified with the macro function CF_SetParStr$.
Page 80
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.3
MACHINE TOOL
5.3.1
MACHINE TOOL TYPE
This section defines the tool machine. All parameters defining kinematik, limits, ... are combined in this section.
•
Post Processor name (TDB_MFG_PP_NAME):
This parameter defines the internal name of the Post Processor.
•
Machine tool type (TDB_MFG_CLASS_NAME):
This parameter defines the Machine Tool Type.
Attention: This parameter must not be modified with the macro function CF_SetParStr$.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 81
Chapter 5 - cPost Tab Pages
5.3.2
MACHINE LIMITS
5.3.2.1
MACHINE LIMITS FEED
•
Rapid feed rate (TDB_MFG_RAPID_FEED):
This parameter defines the feed value for RAPID motions. There is no extra output of this value, but
it is available in the iso blocks. The value is put in the variable pool with the name C_RAPID_FEED.
It is also used by the time calculation of cPost.
•
Minimum feed rate (mmpm) (TDB_MFG_MIN_FEEDRATE):
This parameter defines the minimum value of the feedrate per minute. Each FEDRAT command is
checked with this value. If the programmed value is less than this, cPost outputs a warning in the
report file and the actual feed value is set equal to this minimum.
•
Maximum feed rate (mmpm) (TDB_MFG_MAX_FEEDRATE):
This parameter defines the maximum value of the feedrate per minute. Each FEDRAT command is
checked with this value. If the programmed value is above this, cPost outputs a warning in the report
file and the actual feed value is set equal to this maximum.
•
Minimum feed rate (mmpu) (TDB_N3C_FEED_MIN_ROT):
This parameter defines the minimum value of the feedrate per rotation. Each FEDRAT command is
checked with this value. If the programmed value is less than this, cPost outputs a warning in the
report file and the actual feed value is set equal to this minimum
•
Maximum feed rate (mmpu) (TDB_N3C_FEED_MAX_ROT):
This parameter defines the maximum value of the feedrate per rotation. Each FEDRAT command is
checked with this value. If the programmed value is above, cPost outputs a warning in the report file
and the actual feed value is set equal to this maximum.
•
Minimum feed rate (inverse) (TDB_N3C_FEED_INV_MIN):
This parameter defines the minimum value of the feedrate programmed as inverse time. Each
FEDRAT command is checked with this value. If the programmed value is less, cPost outputs a
warning in the report file and the actual feed value is set equal to this minimum.
•
Maximum feed rate (inverse) (TDB_N3C_FEED_INV_MAX):
This parameter defines the maximum value of the feedrate programmed as inverse time. Each
FEDRAT command is checked with this value. If the programmed value is above, cPost outputs a
warning in the report file and the actual feed value is set equal to this maximum.
Page 82
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.3.2.2
MACHINE LIMITS SPINDLE
•
Min. ss for each range (TDB_MFG_MIN_SPINDLE):
Gives the minimum spindle speed value available for each speed range. It must have as many values as the number of spindle speed ranges.
•
Max. ss for each ranges (TDB_MFG_MAX_SPINDLE):
Gives the maximum spindle speed value available for each speed range. It must have as many values as the number of spindle speed ranges.
•
Min. ts for each range (TDB_MFG_TAP_SPD_MIN):
This attribute specifies the minimum tapping spindle speed value available.
•
Max. ts for each range (TDB_MFG_TAP_SPD_MAX):
This attribute specifies the maximum tapping spindle speed value available.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 83
Chapter 5 - cPost Tab Pages
5.3.2.3
MACHINE LIMITS TRAVEL
•
Minimum X Value (TDB_MFG_X_MIN_LIM):
Defines the possible movements of the spindle face along the travel axis. These limits are defined in
the table axis system and define the machine envelope.
•
Maximum X Value (TDB_MFG_X_MAX_LIM):
Defines the possible movements of the spindle face along the travel axis. These limits are defined in
the table axis system and define the machine envelope.
•
Minimum Y Value (TDB_MFG_Y_MIN_LIM):
Defines the possible movements of the spindle face along the travel axis. These limits are defined in
the table axis system and define the machine envelope.
•
Maximum Y Value (TDB_MFG_Y_MAX_LIM):
Defines the possible movements of the spindle face along the travel axis. These limits are defined in
the table axis system and define the machine envelope.
•
Minimum Z Value (TDB_MFG_Z_MIN_LIM):
Defines the possible movements of the spindle face along the travel axis. These limits are defined in
the table axis system and define the machine envelope.
•
Maximum Z Value (TDB_MFG_Z_MAX_LIM):
Defines the possible movements of the spindle face along the travel axis. These limits are defined in
the table axis system and define the machine envelope.
Page 84
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.3.2.4
MACHINE TOLERANCES
•
Minimum point distance (TDB_MFG_MIN_DISC):
This parameter defines the minimum distance between two consecutive points that the machine is
able to achive. If the distance is less than this value, the second point is suppressed.
•
Minimum circle radius (TDB_MFG_R_MIN_CIRC):
This parameter defines the minimum radius of circular interpolation that the machine is able to
achive. If the radius is less than this value, the circle will be linearized.
•
Maximum circle radius (TDB_MFG_R_MAX_CIRC):
This parameter defines the maximum radius of circular interpolation that the machine is able to
achive. If the radius is greater than this value, the circle will be linearized.
•
Linear tolerance (TDB_MFG_LIN_TOL_POS):
This parameter defines the linear tolerance position of the machine.
•
Angular tolerance (TDB_MFG_ANG_TOL_POS):
This parameter defines the angular tolerance position of the machine.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 85
Chapter 5 - cPost Tab Pages
5.3.3
MACHINE POSITIONS
•
Home position in X (TDB_MFG_X_HOME_POS):
Defines the center position of the spindle face used when the machine is switched on after having
made origin. This position is not a working position.
•
Home position in Y (TDB_MFG_Y_HOME_POS):
Defines the center position of the spindle face used when the machine is switched on after having
made origin. This position is not a working position.
•
Home position in Z (TDB_MFG_Z_HOME_POS):
Defines the center position of the spindle face used when the machine is switched on after having
made origin. This position is not a working position.
•
Spindle orientation (TDB_MFG_SPNDL_ORIENT):
This parameter defines the possible spindle orientations. If any other value than horizontal or vertical is chosen, you can define the starting position of the spindle with the 3 values below.
•
Starting tool vector X (TDB_MFG_INIT_SPINDLE):
Specifies initial position of the spindle. Used only if spindle orientation is fixed, indexable or continuous.
•
Starting tool vector Y (TDB_MFG_INIT_SPINDLE):
Specifies initial position of the spindle. Used only if spindle orientation is fixed, indexable or continuous.
•
Starting tool vector Z (TDB_MFG_INIT_SPINDLE):
Specifies initial position of the spindle. Used only if spindle orientation is fixed, indexable or continuous.
Page 86
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.3.4
MACHINE TOOL TOOLS
•
Maximum number of tools (TDB_MFG_MAX_TL_NB):
This parameter defines the maximum number of tool assemblies which can be mounted on the tool
changer if it exists. If not it represents a maximum number of tool assemblies acceptable for the
machine.
•
Tool change time (TDB_MFG_TL_CHNG_TIME):
This parameter defines the tool change time and is used for the time calculation of cPost.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 87
Chapter 5 - cPost Tab Pages
5.3.5
MACHINE SPINDLE DATA
•
Spindle range number (TDB_MFG_SPNDL_RNG_NB):
Used to describe machines with several discontinuous speed ranges.
•
Spindle speed continous/index (TDB_MFG_SPNDL_SPD_NB):
Specifies the number of spindle speed values available for each speed range. It must have as many
Setvalues as the number of spindle speed ranges.
•
If ss index: number of spindle speeds for each range (TDB_MFG_SPNDL_SPD_NB):
Specifies the number of spindle speed values available for each speed range. It must have as many
values as the number of spindle speed ranges.
•
Spindle speed for each range (TDB_MFG_SPNDL_VALUE):
Gives the spindle speed values available for all speed ranges. It must have as many values as the
total number of spindle speed values. The order in the list of values makes the link between the
value and the number of range.
Example:
If:
- Number of spindle speed ranges = 2
- Number of spindle speed values = 2 and 4
Then:
- List of spindle speed values must have 6 values
- The 2 first values will correspond to the first spindle speed range
- The 4 last values will correspond to the second spindle speed range
•
Min. ss for each range (TDB_MFG_MIN_SPINDLE):
Gives the minimum spindle speed value available for each speed range. It must have as many values as the number of spindle speed ranges.
•
Max. ss for each range (TDB_MFG_MAX_SPINDLE):
Gives the maximum spindle speed value available for each speed range. It must have as many values as the number of spindle speed ranges.
•
Set spindle values:
To set the values for the paramters, press this button. The Spindle range values panel opends.
Page 88
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 89
Chapter 5 - cPost Tab Pages
5.3.6
MACHINE ROTARY AXIS (MULTAX MACHINES)
5.3.6.1
TWO AXIS ON HEAD
•
Dependent axis (TDB_MFG_AXIS_PRIORITY):
This parameter defines order of the rotation axis. It is necessary for machines with two rotary axis
and defines which rotary axis position is dependent from the other rotation axis. For example: The
tool machine has a typical gantry head (rotation C around Z and tilting A aroud X). If you define the
C axis as the first axis and the A axis as the second, you must define here the second as the
dependent axis.
BOTH (Only available for Table-Head machines) means: there is no such limitation on the machine
- so there is no priority between the rotary axes.
Attention: This parameter can only be modified with the macro function CF_SETPARTDB$ with the
"ADD" option. Possible values are "FIRST", "SECOND" and "BOTH".
e.g. SOLD$ = CF_SETPARTDB$("MFG_AXIS_PRIORITY","SECOND","ADD")
•
Nutator angle (TDB_N3C_NUTATOR_ANGLE):
This parameter defines the angle between the independent and the dependant rotary axis. It is only
necessary, if the rotary axis are not perpendicular.
Attention: This parameter can only be modified with the macro function CF_SETPARTDB$ with the
"ADD" option. The new value has to be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("N3C_NUTATOR_ANGLE","45.0","ADD")
Page 90
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.3.6.2
FIRST HEAD AXIS
•
First head axis (TDB_MFG_SPNDL_AXIS):
This parameter defines which axis of the machining axis system is parallel to the rotary axis.
“A'' : the axis rotates around X axis.
''B'' : the axis rotates around Y axis.
''C'' : the axis rotates around Z axis.
Attention: This parameter can only be modified with the macro function CF_SETPARTDB$ with the
"ADD" option. Possible values are "A", "B" and "C".
e.g. SOLD$ = CF_SETPARTDB$("MFG_SPNDL_AXIS","A","ADD").
•
Rotation direction (TDB_MFG_SPN_DIR):
This parameter defines the possible rotation directions. Possible values are CLW, CCLW and
BOTH. If BOTH is selected, cPost compares the possible rotation angles and output the better solution.
Attention:
This parameter can be modified with the macro function CF_SetParTDB$. Possible values are
BOTH, CLW,CCLW. e.g. OLD$ = CF_ SETPARTDB$(’’MFG_SPN_DIR’’,’’BOTH’’) .
•
Rotation angle (TDB_MFG_SPN_TYP):
This parameter defines if the rotation angles of this axis are absolute or relative. If BOTH is selected,
the output depends on the actual MODE/INCR command.
Attention:
This parameter can be modified with the macro function CF_SetParTDB$. Possible values are
“ABS”, “REL”, “BOTH”.
e.g. OLD$ = CF_ SETPARTDB$(''MFG_SPN_TYP'',''BOTH'')
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 91
Chapter 5 - cPost Tab Pages
•
Pos. Rotation direction (TDB_MFG_SPN_POS_WAY):
This parameter defines the positive rotation direction. If CLW is selected, cPost considers all clockwise rotations as positive.
Attention:
This parameter can be modified with the macro function CF_SetParTDB$. Possible values are 1 for
CCLW and 2 for CLW. e.g. OLD$ = CF_ SETPARTDB$(’’MFG_SPN_POS_WAY’’,’’1’’) to switch to
CCLW
•
Type of rotary head movement (TDB_MFG_SPINDL_VR):
This parameter defines the type of rotary head movement. If ’’continunous’’ is selected, each angle
position is possible. If ’’stepwise’’ is selected, cPost outputs the nearest angle position in dependence of the defined ’’index step’’.
Attention:
This parameter can be modified with the macro function CF_SetParTDB$. Possible values are ’’BY
STEP’’ or ’’CONTINUOUS’’. e.g. OLD$ = CF_ SETPARTDB$(’’MFG_SPINDL_VR’’,’’BY STEP’’)
•
Index step (TDB_MFG_SPN_STP_ANG):
This parameter is used only if the type of rotary head movement is by step. It specifies in degrees
the elementary rotation step.
Attention:
This parameter can be modified with the macro function CF_SETPARTDB$. The new value has to
be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_SPN_STP_ANG","5.0")
•
Spindle Travel limit
• Minimum value (TDB_MFG_SPNDL_MINPOS):
Specifies the minimum limit position of the spindle about spindle center with respect to the Zaxis for A and B rotation axes and to X-axis for C rotation axis.
Value range: real
Minimal value: no
Maximal value: no
Unit: degrees
Default value: -360.0
Dependencies:
Spindle orientation (MFG_SPNDL_ORIENT) = INDEXABLE | CONTINUOUS
Attention:
This parameter can be modified with the macro function CF_SETPARTDB$. The new value
has to be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_SPNDL_MINPOS","5.0")
•
•
Maximum value (TDB_MFG_SPNDL_MAXPOS):
Specifies the maximum limit position of the spindle about spindle center with respect to the Zaxis for A and B rotation axes and to X-axis for C rotation axis.
Value range: real
Minimal value: no
Maximal value: no
Unit: degrees
Default value: +360.0
Dependencies:
Spindle orientation (MFG_SPNDL_ORIENT) = INDEXABLE | CONTINUOUS
Attention:
This parameter can be modified with the macro function CF_SETPARTDB$. The new value
has to be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_SPNDL_MAXPOS","5.0")
Center of Spindle axis
• x value center first axis (TDB_MFG_X_SPNDL_CTR):
Page 92
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
This parameter defines the coordinates of the center of the spindle. These coordinates are
expressed in the travel axis system. They are needed for the coordiante recalculation in MULTAX mode.
Attention: This parameter can be modified with the macro function CF_SETPARTDB$. The
new value must be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_X_SPNDL_CTR","0.0")
•
•
y value center first axis (TDB_MFG_Y_SPNDL_CTR):
This parameter defines the coordinates of the center of the spindle. These coordinates are
expressed in the travel axis system. They are needed for the coordiante recalculation in MULTAX mode.
Attention: This parameter can be modified with the macro function CF_SETPARTDB$. The
new value must be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_Y_SPNDL_CTR","0.0")
•
z value center first axis (TDB_MFG_Z_SPNDL_CTR):
This parameter defines the coordinates of the center of the spindle. These coordinates are
expressed in the travel axis system. They are needed for the coordiante recalculation in MULTAX mode.
Attention: This parameter can be modified with the macro function CF_SETPARTDB$. The
new value must be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_Z_SPNDL_CTR","0.0")
Offset first axis (TDB_N3C_SPNDL_INITPOS):
This parameter defines the origin on the rotations axis in the head of the machine tool.
Attention: This parameter can be modified with the macro function CF_SETPARTDB$. The new
value must be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$(“N3C_SPNDL_INITPOS”,”0.0”)
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 93
Chapter 5 - cPost Tab Pages
5.3.6.3
SECOND HEAD AXIS
•
Second head axis (TDB_MFG_SPNDL_AXIS_2):
This parameter defines which axis of the machining axis system is parallel to the rotary axis.
“A'' : the axis rotates around X axis.
''B'' : the axis rotates around Y axis.
''C'' : the axis rotates around Z axis.
Attention: This parameter can only be modified with the macro function CF_SETPARTDB$ with the
"ADD" option. Possible values are "A", "B" and "C".
e.g. SOLD$ = CF_SETPARTDB$("MFG_SPNDL_AXIS_2","A","ADD").
•
Rotation direction (TDB_MFG_SPN_DIR_2):
This parameter defines the possible rotation directions. Possible values are CLW, CCLW and
BOTH. If BOTH is selected, cPost compares the possible rotation angles and output the better solution.
Attention:
This parameter can be modified with the macro function CF_SetParTDB$. Possible values are
BOTH, CLW,CCLW. e.g. OLD$ = CF_ SETPARTDB$(’’MFG_SPN_DIR_2’’,’’BOTH’’)
•
Rotation angle (TDB_MFG_SPN_TYP_2):
This parameter defines if the rotation angles of this axis are absolute or relative. If BOTH is selected,
the output depends on the actual MODE/INCR command.
Attention:
This parameter can be modified with the macro function CF_SetParTDB$. Possible values are ABS,
REL, BOTH. e.g. OLD$ = CF_ SETPARTDB$(’’MFG_SPN_TYP_2’’,’’BOTH’’)
Page 94
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
•
Pos. Rotation direction (TDB_MFG_SPN_POS_WAY_2):
This parameter defines the positive rotation direction. If CLW is selected, cPost considers all clockwise rotations as positive.
Attention:
This parameter can be modified with the macro function CF_SetParTDB$. Possible values are 1 for
CCLW and 2 for CLW. e.g. OLD$ = CF_ SETPARTDB$(’’MFG_SPN_POS_WAY_2’’,’’1’’) to switch
to CCLW
•
Type of rotary head movement (TDB_MFG_SPINDL_VR_2):
This parameter defines the type of rotary head movement. If ’’continunous’’ is selected, each angle
position is possible. If ’’stepwise’’ is selected, cPost outputs the nearest angle position in dependence of the defined ’’index step’’.
Attention:
This parameter can be modified with the macro function CF_SetParTDB$. Possible values are ’’BY
STEP’’ or ’’CONTINUOUS’’. e.g. OLD$ = CF_ SETPARTDB$(’’MFG_SPINDL_VR_2’’,’’BY STEP’’)
•
Index step (TDB_MFG_SPN_STP_2):
This parameter is used only if the type of rotary head movement is by step. It specifies in degrees
the elementary rotation step.
Attention:
This parameter can be modified with the macro function CF_SETPARTDB$. The new value has to
be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_SPN_STP_2","5.0")
.
•
Spindle Travel limit
• Minimum value (TDB_MFG_SPNDL_MINPS2):
Specifies the minimum limit position of the spindle about spindle center with respect to the Zaxis for A and B rotation axes and to X-axis for C rotation axis.
Value range: real
Minimal value: no
Maximal value: no
Unit: degrees
Default value: -360.0
Dependencies:
Spindle orientation (MFG_SPNDL_ORIENT) = INDEXABLE | CONTINUOUS
Attention:
This parameter can be modified with the macro function CF_SETPARTDB$. The new value
has to be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_SPNDL_MINPS2","5.0")
•
•
Maximum value (TDB_MFG_SPNDL_MAXPS2):
Specifies the maximum limit position of the spindle about spindle center with respect to the Zaxis for A and B rotation axes and to X-axis for C rotation axis.
Value range: real
Minimal value: no
Maximal value: no
Unit: degrees
Default value: +360.0
Dependencies:
Spindle orientation (MFG_SPNDL_ORIENT) = INDEXABLE | CONTINUOUS
Attention:
This parameter can be modified with the macro function CF_SETPARTDB$. The new value
has to be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_SPNDL_MAXPS2","5.0")
Center of Spindle axis
• x value center second axis (TDB_MFG_X_SPNDL_CTR_2):
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 95
Chapter 5 - cPost Tab Pages
This parameter defines the coordinates of the center of the spindle. These coordinates are
expressed in the travel axis system. They are needed for the coordiante recalculation in MULTAX mode.
Attention: This parameter can be modified with the macro function CF_SETPARTDB$. The
new value must be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_X_SPNDL_CTR_2","0.0")
•
•
y value center second axis (TDB_MFG_Y_SPNDL_CTR_2):
This parameter defines the coordinates of the center of the spindle. These coordinates are
expressed in the travel axis system. They are needed for the coordiante recalculation in MULTAX mode.
Attention: This parameter can be modified with the macro function CF_SETPARTDB$. The
new value must be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_Y_SPNDL_CTR_2","0.0")
•
z value center second axis (TDB_MFG_Z_SPNDL_CTR_2):
This parameter defines the coordinates of the center of the spindle. These coordinates are
expressed in the travel axis system. They are needed for the coordiante recalculation in MULTAX mode.
Attention: This parameter can be modified with the macro function CF_SETPARTDB$. The
new value must be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_Z_SPNDL_CTR_2","0.0")
Offset second axis (TDB_N3C_SPNDL_INITPS2):
This parameter defines the origin on the rotations axis in the head of the machine tool.
Attention: This parameter can be modified with the macro function CF_SETPARTDB$. The new
value must be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$(“N3C_SPNDL_INITPS2”,”0.0”)
Page 96
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.3.6.4
TWO AXIS ON TABLE
•
Dependent axis (TDB_MFG_AXIS_PRIORITY):
This parameter defines order of the rotation axis. It is necessary for machines with two rotary axis
and defines which rotary axis position is dependent from the other rotation axis. For example: The
tool machine has a typical gantry head (rotation C around Z and tilting A aroud X). If you define the
C axis as the first axis and the A axis as the second, you must define here the second as the
dependent axis. BOTH (Only available for Table-Head machines) means: there is no such limitation
on the machine - so there is no priority between the rotary axes.
Attention: This parameter can only be modified with the macro function CF_SETPARTDB$ with the
"ADD" option. Possible values are "FIRST", "SECOND" and "BOTH".
e.g. SOLD$ = CF_SETPARTDB$("MFG_AXIS_PRIORITY","SECOND","ADD")
•
Nutator angle (TDB_N3C_NUTATOR_ANGLE):
This parameter defines the angle between the independent and the dependant rotary axis. It is only
necessary, if the rotary axis are not perpendicular.
Attention: This parameter can only be modified with the macro function CF_SETPARTDB$ with the
"ADD" option. The new value has to be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("N3C_NUTATOR_ANGLE","45.0","ADD")
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 97
Chapter 5 - cPost Tab Pages
5.3.6.5
•
FIRST TABLE AXIS
First table axis (TDB_MFG_ROTARY_AXIS):
This parameter defines which axis of the machining axis system is parallel to the rotary axis.
’’A’’ : the axis rotates around X axis.
’’B’’ : the axis rotates around Y axis.
’’C’’ : the axis rotates around Z axis.
Attention: This parameter can only be modified with the macro function CF_SETPARTDB$ with the
"ADD" option. Possible values are "A", "B" and "C".
e.g. SOLD$ = CF_SETPARTDB$("MFG_ROTARY_AXIS","A","ADD").
•
Rotation direction (TDB_MFG_ROT_DIR):
This parameter defines the possible rotation directions. Possible values are CLW, CCLW and
BOTH. If BOTH is selected, cPost compares the possible rotation angles and output the better solution.
Attention:
This parameter can be modified with the macro function CF_SetParTDB$. Possible values are
BOTH, CLW,CCLW. e.g. OLD$ = CF_ SETPARTDB$(’’MFG_ROT_DIR’’,’’BOTH’’)
•
Rotation angle (TDB_MFG_ROT_TYP):
This parameter defines if the rotation angles of this axis are absolute or relative. If BOTH is selected,
the output depends on the actual MODE/INCR command.
Attention:
This parameter can be modified with the macro function CF_SetParTDB$. Possible values are ABS,
REL, BOTH. e.g. OLD$ = CF_ SETPARTDB$(’’MFG_ROT_TYP’’,’’BOTH’’)
Page 98
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
•
Pos. Rotation direction (TDB_MFG_ROT_POS_WAY):
This parameter defines the positive rotation direction. If CLW is selected, cPost considers all clockwise rotations as positive.
Attention:
This parameter can be modified with the macro function CF_SetParTDB$. Possible values are 1 for
CCLW and 2 for CLW. e.g. OLD$ = CF_ SETPARTDB$(’’MFG_ROT_POS_WAY’’,’’1’’) to switch to
CCLW
•
Type of rotary table movement (TDB_MFG_ROTARY_VR):
This parameter defines the type of rotary table movement. If ’’continunous’’ is selected, each angle
position is possible. If ’’stepwise’’ is selected, cPost outputs the nearest angle position in dependence of the defined ’’index step’’.
Attention:
This parameter can be modified with the macro function CF_SetParTDB$. Possible values are ’’BY
STEP’’ or ’’CONTINUOUS’’. e.g. OLD$ = CF_ SETPARTDB$(’’MFG_ROTARY_VR’’,’’BY STEP’’)
•
Index step (TDB_MFG_ROT_STEP_ANG):
This parameter is used only if the type of rotary table movement is by step. It specifies in degrees
the elementary rotation step.
Attention:
This parameter can be modified with the macro function CF_SETPARTDB$. The new value has to
be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_ROT_STEP_ANG","5.0")
•
Rotary axis Travel limit
• Axis Minimum (TDB_MFG_MIN_ROT_POS):
This parameter defines the limit angles of the table rotation.
This attribute is used by cPost to check the accessibility of the position to be reached by the
tool and to compute angles.
Attention: This parameter can be modified with the macro function CF_SETPARTDB$. The
new value must be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_MIN_ROT_POS”,"0.0")
•
•
Axis Maximum (TDB_MFG_MAX_ROT_POS):
This parameter defines the limit angles of the table rotation.
This attribute is used by cPost to check the accessibility of the position to be reached by the
tool and to compute angles.
Attention: This parameter can be modified with the macro function CF_SETPARTDB$. The
new value must be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_MAX_ROT_POS”,"0.0")
Center of Rotary axis
• x value center first axis (TDB_MFG_X_ROT_CENTER):
This parameter defines the coordinates of the center of the rotation axis of the rotary table.
The coordinates are expressed in the travel axis system.
These attributes are used by cPost to recalculate the coordinates in MULTAX mode.
Attention: This parameter can be modified with the macro function CF_SETPARTDB$. The
new value must be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_X_ROT_CENTER”,"0.0")
•
y value center first axis (TDB_MFG_Y_ROT_CENTER):
This parameter defines the coordinates of the center of the rotation axis of the rotary table.
The coordinates are expressed in the travel axis system.
These attributes are used by cPost to recalculate the coordinates in MULTAX mode.
Attention: This parameter can be modified with the macro function CF_SETPARTDB$. The
new value must be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_Y_ROT_CENTER”,"0.0")
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 99
Chapter 5 - cPost Tab Pages
•
z value center first axis (TDB_MFG_Z_ROT_CENTER):
This parameter defines the coordinates of the center of the rotation axis of the rotary table.
The coordinates are expressed in the travel axis system.
These attributes are used by cPost to recalculate the coordinates in MULTAX mode.
Attention: This parameter can be modified with the macro function CF_SETPARTDB$. The
new value must be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_Z_ROT_CENTER”,"0.0")
•
Offset (TDB_MFG_INIT_ROT_POS):
This parameter defines the intial angle of the rotary table.
Attention: This parameter can be modified with the macro function CF_SETPARTDB$. The new
value must be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$(“MFG_INIT_ROT_POS”,"0.0")
Page 100
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.3.6.6
•
SECOND TABLE AXIS
Second table axis (TDB_MFG_ROTARY_AXIS_2):
This parameter defines which axis of the machining axis system is parallel to the rotary axis.
’’A’’ : the axis rotates around X axis.
’’B’’ : the axis rotates around Y axis.
”C'' : the axis rotates around Z axis.
Attention: This parameter can only be modified with the macro function CF_SETPARTDB$ with the
"ADD" option. Possible values are "A", "B" and "C".
e.g. SOLD$ = CF_SETPARTDB$("MFG_ROTARY_AXIS_2","A","ADD").
•
Rotation direction (TDB_MFG_ROT_DIR_2):
This parameter defines the possible rotation directions. Possible values are CLW, CCLW and
BOTH. If BOTH is selected, cPost compares the possible rotation angles and output the better solution.
Attention:
This parameter can be modified with the macro function CF_SetParTDB$. Possible values are
BOTH, CLW,CCLW. e.g. OLD$ = CF_ SETPARTDB$(’’MFG_ROT_DIR_2’’,’’BOTH’’)
•
Rotation angle (TDB_MFG_ROT_TYP_2):
This parameter defines if the rotation angles of this axis are absolute or relative. If BOTH is selected,
the output depends on the actual MODE/INCR command.
Attention:
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 101
Chapter 5 - cPost Tab Pages
This parameter can be modified with the macro function CF_SetParTDB$. Possible values are ABS,
REL, BOTH. e.g. OLD$ = CF_ SETPARTDB$(’’MFG_ROT_TYP’’,’’BOTH’’) .
•
Pos. Rotation direction (TDB_MFG_ROT_POS_WAY_2):
This parameter defines the positive rotation direction. If CLW is selected, cPost considers all clockwise rotations as positive.
Attention:
This parameter can be modified with the macro function CF_SetParTDB$. Possible values are 1 for
CCLW and 2 for CLW. e.g. OLD$ = CF_ SETPARTDB$(’’MFG_ROT_POS_WAY_2’’,’’1’’) to switch
to CCLW
•
Type of rotary table movement (TDB_MFG_ROTARY_VR_2):
This parameter defines the type of rotary table movement. If ’’continunous’’ is selected, each angle
position is possible. If ’’stepwise’’ is selected, cPost outputs the nearest angle position in dependence of the defined ’’index step’’.
Attention:
This parameter can be modified with the macro function CF_SetParTDB$. Possible values are ’’BY
STEP’’ or ’’CONTINUOUS’’. e.g. OLD$ = CF_ SETPARTDB$(’’MFG_ROTARY_VR_2’’,’’BY STEP’’)
•
Index step (TDB_MFG_ROT_STEP_2):
This parameter is used only if the type of rotary table movement is by step. It specifies in degrees
the elementary rotation step.
Attention:
This parameter can be modified with the macro function CF_SETPARTDB$. The new value has to
be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_ROT_STEP_2","5.0")
•
Rotary axis Travel limit
• Axis Minimum (TDB_MFG_MIN_ROT_POS_2):
This parameter defines the limit angles of the table rotation.
This attribute is used by cPost to check the accessibility of the position to be reached by the
tool and to compute angles.
Attention: This parameter can be modified with the macro function CF_SETPARTDB$. The
new value must be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_MIN_ROT_POS_2”,"0.0")
•
•
Axis Maximum (TDB_MFG_MAX_ROT_POS_2):
This parameter defines the limit angles of the table rotation.
This attribute is used by cPost to check the accessibility of the position to be reached by the
tool and to compute angles.
Attention: This parameter can be modified with the macro function CF_SETPARTDB$. The
new value must be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_MAX_ROT_POS_2”,"0.0")
Center of Rotary axis
• x value center second axis (TDB_MFG_X_ROT_CNTR_2):
This parameter defines the coordinates of the center of the rotation axis of the rotary table.
The coordinates are expressed in the travel axis system.
These attributes are used by cPost to recalculate the coordinates in MULTAX mode.
Attention: This parameter can be modified with the macro function CF_SETPARTDB$. The
new value must be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_X_ROT_CNTR_2”,"0.0")
•
Page 102
y value center second axis (TDB_MFG_Y_ROT_CNTR_2):
This parameter defines the coordinates of the center of the rotation axis of the rotary table.
The coordinates are expressed in the travel axis system.
These attributes are used by cPost to recalculate the coordinates in MULTAX mode.
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
Attention: This parameter can be modified with the macro function CF_SETPARTDB$. The
new value must be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_Y_ROT_CNTR_2”,"0.0")
•
z value center second axis (TDB_MFG_Z_ROT_CNTR_2):
This parameter defines the coordinates of the center of the rotation axis of the rotary table.
The coordinates are expressed in the travel axis system.
These attributes are used by cPost to recalculate the coordinates in MULTAX mode.
Attention: This parameter can be modified with the macro function CF_SETPARTDB$. The
new value must be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_Z_ROT_CNTR_2”,"0.0")
•
Offset (TDB_MFG_INIT_ROT_POS_2).
This parameter defines the intial angle of the rotary table.
Attention: This parameter can be modified with the macro function CF_SETPARTDB$. The new
value must be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$(“MFG_INIT_ROT_POS_2”,"0.0")
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 103
Chapter 5 - cPost Tab Pages
5.3.6.7
•
AXIS ON TABLE HEAD
Nutator angle (TDB_N3C_NUTATOR_ANGLE):
This parameter defines the angle between the independent and the dependant rotary axis. It is only
necessary, if the rotary axis are not perpendicular.
Attention: This parameter can only be modified with the macro function CF_SETPARTDB$ with the
"ADD" option. The new value has to be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("N3C_NUTATOR_ANGLE","45.0","ADD")
Page 104
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.3.6.8
HEAD AXIS
•
Head axis (TDB_MFG_SPNDL_AXIS):
This parameter defines which axis of the machining axis system is parallel to the rotary axis.
“A'' : the axis rotates around X axis.
''B'' : the axis rotates around Y axis.
''C'' : the axis rotates around Z axis.
Attention: This parameter can only be modified with the macro function CF_SETPARTDB$ with the
"ADD" option. Possible values are "A", "B" and "C".
e.g. SOLD$ = CF_SETPARTDB$("MFG_SPNDL_AXIS","A","ADD").
•
Rotation direction (TDB_MFG_SPN_DIR):
This parameter defines the possible rotation directions. Possible values are CLW, CCLW and
BOTH. If BOTH is selected, cPost compares the possible rotation angles and output the better solution.
Attention:
This parameter can be modified with the macro function CF_SetParTDB$. Possible values are
BOTH, CLW,CCLW. e.g. OLD$ = CF_ SETPARTDB$(’’MFG_SPN_DIR’’,’’BOTH’’)
•
Rotation angle (TDB_MFG_SPN_TYP):
This parameter defines if the rotation angles of this axis are absolute or relative. If BOTH is selected,
the output depends on the actual MODE/INCR command.
Attention:
This parameter can be modified with the macro function CF_SetParTDB$. Possible values are ABS,
REL, BOTH. e.g. OLD$ = CF_ SETPARTDB$(’’MFG_SPN_TYP’’,’’BOTH’’)
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 105
Chapter 5 - cPost Tab Pages
•
Pos. Rotation direction (TDB_MFG_SPN_POS_WAY):
This parameter defines the positive rotation direction. If CLW is selected, cPost considers all clockwise rotations as positive.
Attention:
This parameter can be modified with the macro function CF_SetParTDB$. Possible values are 1 for
CCLW and 2 for CLW. e.g. OLD$ = CF_ SETPARTDB$(’’MFG_SPN_POS_WAY’’,’’1’’) to switch to
CCLW
•
Type of rotary head movement (TDB_MFG_SPINDL_VR):
This parameter defines the type of rotary head movement. If ’’continunous’’ is selected, each angle
position is possible. If ’’stepwise’’ is selected, cPost outputs the nearest angle position in dependence of the defined ’’index step’’.
Attention:
This parameter can be modified with the macro function CF_SetParTDB$. Possible values are ’’BY
STEP’’ or ’’CONTINUOUS’’. e.g. OLD$ = CF_ SETPARTDB$(’’MFG_SPINDL_VR’’,’’BY STEP’’)
•
Index step (TDB_MFG_SPN_STP_ANG):
This parameter is used only if the type of rotary head movement is by step. It specifies in degrees
the elementary rotation step.
Attention:
This parameter can be modified with the macro function CF_SETPARTDB$. The new value has to
be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_SPN_STP_ANG","5.0")
•
Spindle Travel limit
• Minimum value (TDB_MFG_SPNDL_MINPOS):
Specifies the minimum limit position of the spindle about spindle center with respect to the Zaxis for A and B rotation axes and to X-axis for C rotation axis.
Value range: real
Minimal value: no
Maximal value: no
Unit: degrees
Default value: -360.0
Dependencies:
Spindle orientation (MFG_SPNDL_ORIENT) = INDEXABLE | CONTINUOUS
Attention:
This parameter can be modified with the macro function CF_SETPARTDB$. The new value
has to be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_SPNDL_MINPOS","5.0")
•
Page 106
Maximum value (TDB_MFG_SPNDL_MAXPOS):
Specifies the maximum limit position of the spindle about spindle center with respect to the Zaxis for A and B rotation axes and to X-axis for C rotation axis.
Value range: real
Minimal value: no
Maximal value: no
Unit: degrees
Default value: +360.0
Dependencies:
Spindle orientation (MFG_SPNDL_ORIENT) = INDEXABLE | CONTINUOUS
Attention:
This parameter can be modified with the macro function CF_SETPARTDB$. The new value
has to be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_SPNDL_MAXPOS","5.0")
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
•
•
Center of Spindle axis
• x value center head axis (TDB_MFG_X_SPNDL_CTR):
This parameter defines the coordinates of the center of the spindle. These coordinates are
expressed in the travel axis system. They are needed for the coordiante recalculation in MULTAX mode.
Attention: This parameter can be modified with the macro function CF_SETPARTDB$. The
new value must be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_X_SPNDL_CTR","0.0")
•
y value center head axis (TDB_MFG_Y_SPNDL_CTR):
This parameter defines the coordinates of the center of the spindle. These coordinates are
expressed in the travel axis system. They are needed for the coordiante recalculation in MULTAX mode.
Attention: This parameter can be modified with the macro function CF_SETPARTDB$. The
new value must be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_Y_SPNDL_CTR","0.0")
•
z value center head axis (TDB_MFG_Z_SPNDL_CTR):
This parameter defines the coordinates of the center of the spindle. These coordinates are
expressed in the travel axis system. They are needed for the coordiante recalculation in MULTAX mode.
Attention: This parameter can be modified with the macro function CF_SETPARTDB$. The
new value must be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_Z_SPNDL_CTR","0.0")
Offset head axis (TDB_N3C_SPNDL_INITPOS):
This parameter defines the origin on the rotations axis in the head of the machine tool.
Attention: This parameter can be modified with the macro function CF_SETPARTDB$. The new
value must be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$(“N3C_SPNDL_INITPOS”,”0.0”)
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 107
Chapter 5 - cPost Tab Pages
5.3.6.9
•
TABLE AXIS
First table axis (TDB_MFG_ROTARY_AXIS):
This parameter defines which axis of the machining axis system is parallel to the rotary axis.
’’A’’ : the axis rotates around X axis.
’’B’’ : the axis rotates around Y axis.
’’C’’ : the axis rotates around Z axis.
Attention: This parameter can only be modified with the macro function CF_SETPARTDB$ with the
"ADD" option. Possible values are "A", "B" and "C".
e.g. SOLD$ = CF_SETPARTDB$("MFG_ROTARY_AXIS","A","ADD").
•
Rotation direction (TDB_MFG_ROT_DIR):
This parameter defines the possible rotation directions. Possible values are CLW, CCLW and
BOTH. If BOTH is selected, cPost compares the possible rotation angles and output the better solution.
Attention:
This parameter can be modified with the macro function CF_SetParTDB$. Possible values are
BOTH, CLW,CCLW. e.g. OLD$ = CF_ SETPARTDB$(’’MFG_ROT_DIR’’,’’BOTH’’)
•
Rotation angle (TDB_MFG_ROT_TYP):
This parameter defines if the rotation angles of this axis are absolute or relative. If BOTH is selected,
the output depends on the actual MODE/INCR command.
Attention:
Page 108
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
This parameter can be modified with the macro function CF_SetParTDB$. Possible values are ABS,
REL, BOTH. e.g. OLD$ = CF_ SETPARTDB$(’’MFG_ROT_TYP’’,’’BOTH’’)
•
Pos. Rotation direction (TDB_MFG_ROT_POS_WAY):
This parameter defines the positive rotation direction. If CLW is selected, cPost considers all clockwise rotations as positive.
Attention:
This parameter can be modified with the macro function CF_SetParTDB$. Possible values are 1 for
CCLW and 2 for CLW. e.g. OLD$ = CF_ SETPARTDB$(’’MFG_ROT_POS_WAY’’,’’1’’) to switch to
CCLW
•
Type of rotary table movement (TDB_MFG_ROTARY_VR):
This parameter defines the type of rotary table movement. If ’’continunous’’ is selected, each angle
position is possible. If ’’stepwise’’ is selected, cPost outputs the nearest angle position in dependence of the defined ’’index step’’.
Attention:
This parameter can be modified with the macro function CF_SetParTDB$. Possible values are ’’BY
STEP’’ or ’’CONTINUOUS’’. e.g. OLD$ = CF_ SETPARTDB$(’’MFG_ROTARY_VR’’,’’BY STEP’’)
•
Index step (TDB_MFG_ROT_STEP_ANG):
This parameter is used only if the type of rotary table movement is by step. It specifies in degrees
the elementary rotation step.
Attention:
This parameter can be modified with the macro function CF_SETPARTDB$. The new value has to
be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_ROT_STEP_ANG","5.0")
•
Rotary axis Travel limit
• Axis Minimum (TDB_MFG_MIN_ROT_POS):
This parameter defines the limit angles of the table rotation.
This attribute is used by cPost to check the accessibility of the position to be reached by the
tool and to compute angles.
Attention: This parameter can be modified with the macro function CF_SETPARTDB$. The
new value must be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_MIN_ROT_POS”,"0.0")
•
•
Axis Maximum (TDB_MFG_MAX_ROT_POS):
This parameter defines the limit angles of the table rotation.
This attribute is used by cPost to check the accessibility of the position to be reached by the
tool and to compute angles.
Attention: This parameter can be modified with the macro function CF_SETPARTDB$. The
new value must be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_MAX_ROT_POS”,"0.0")
Center of Rotary axis
• x value center table axis (TDB_MFG_X_ROT_CENTER):
This parameter defines the coordinates of the center of the rotation axis of the rotary table.
The coordinates are expressed in the travel axis system.
These attributes are used by cPost to recalculate the coordinates in MULTAX mode.
Attention: This parameter can be modified with the macro function CF_SETPARTDB$. The
new value must be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_X_ROT_CENTER”,"0.0")
•
y value center table axis (TDB_MFG_Y_ROT_CENTER):
This parameter defines the coordinates of the center of the rotation axis of the rotary table.
The coordinates are expressed in the travel axis system.
These attributes are used by cPost to recalculate the coordinates in MULTAX mode.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 109
Chapter 5 - cPost Tab Pages
Attention: This parameter can be modified with the macro function CF_SETPARTDB$. The
new value must be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_Y_ROT_CENTER”,"0.0")
•
z value center table axis (TDB_MFG_Z_ROT_CENTER):
This parameter defines the coordinates of the center of the rotation axis of the rotary table.
The coordinates are expressed in the travel axis system.
These attributes are used by cPost to recalculate the coordinates in MULTAX mode.
Attention: This parameter can be modified with the macro function CF_SETPARTDB$. The
new value must be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$("MFG_Z_ROT_CENTER”,"0.0")
•
Offset (TDB_MFG_INIT_ROT_POS):
This parameter defines the intial angle of the rotary table.
Attention: This parameter can be modified with the macro function CF_SETPARTDB$. The new
value must be defined as a string.
e.g. SOLD$ = CF_SETPARTDB$(“MFG_INIT_ROT_POS”,"0.0")
Page 110
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4
CONTROLLER
5.4.1
DEFAULT SETTINGS
5.4.1.1
STARTING CONDITIONS
•
Starting abs/incr condition (I4_START_COORD_TYPE):
This parameter defines if the output of the coordinates up to the first MODE/INCR command is
absolute or incremental.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 1 for
absolute and 2 for incremental. e.g. OLD = CF_ SETPARINT(’’START_COORD_TYPE’’,1)
•
Starting plane (STR_DEFAULT_PLANE):
This parameter defines the starting working plane of the toolmachine.
Attention:
This parameter can be modified with the macro function CF_SetParStr$. Possible values are “XY”,
“XY2”, “ZX1”, “ZX2”, “YZ1”, “YZ2” and “ZXL”.
e.g. OLD$ = CF_ SETPARSTR$(''DEFAULT_PLANE'',''XY'')
•
Starting feed unit (I4_START_FEED_UNIT):
This parameter defines the feed rate unit until the first FEDRAT or TOOLNO command.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 1 for
unit/min and 2 for unit/revolution. e.g. OLD = CF_ SETPARINT(’’FEED_UNIT’’,1)
•
Starting spindle unit (I4_START_SPINDL_UNIT):
This parameter defines if the spindle speed or the cutting speed is constant until the first SPINDL or
TOOLNO command.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 1 for
constant spindle speed (RPM) and 2 for constant cutting speed (SFM).
e.g. OLD = CF_ SETPARINT(’’SPINDL_UNIT’’,1)
•
Suppress 1st FEDRAT (I4_SUPRESS_FIRST_FEED):
This parameter defines if the first FEDRAT command will be suppressed or not. If selected, the first
FEDRAT command is suppressed.
Attention: This parameter cannot be modified with the macro function CF_SETPARINT.
•
Suppress 1st GOTO (I4_SUPRESS_FIRST_GOTO):
This parameter defines if the first GOTO command will be suppressed or not. If selected, the first
GOTO command is suppressed.
Attention: This parameter cannot be modified with the macro function CF_SETPARINT.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 111
Chapter 5 - cPost Tab Pages
•
Skip FROM command (I4_SKIP_FROM):
This parameter defines if the FROM command is skipped or not. If selected, the FROM command is
suppressed.
Attention: This parameter cannot be modified with the macro function CF_SETPARINT.
Page 112
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.1.2
CONVERSION FACTORS
•
Factor Toolno (I4_APT_NC_FACTOR_TOOLNO):
If this switch is set, TOOLNO parameter values, which contain a linear measurement unit, will be
multiplied by the conversion factor between the linear measurement used in the APT file and the linear measurement to be generated in the NC data. i.e. the linear measurement unit of the values
used in the TOOLNO statement is the same as the one used in the CAD system.
If the switch is not set, the linear measurement unit of the values in the TOOLNO statement is the
same as the one of the tool machine.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0 (do
not use factor) or 1 (use factor). e.g. OLD = CF_ SETPARINT(’’APT_NC_FACTOR_TOOLNO’’,1)
•
Factor Switch (I4_APT_NC_FACTOR_SWITCH):
If this switch is set, SWITCH parameter values, which contain a linear measurement unit, will be
multiplied by the conversion factor between the linear measurement used in the APT file and the linear measurement to be generated in the NC data. i.e. the linear measurement unit of the values
used in the SWITCH statement is the same as the one used in the CAD system.
If the switch is not set, the linear measurement unit of the values in the SWITCH statement is the
same as the one of the tool machine.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0 (do
not use factor) or 1 (use factor). e.g. OLD = CF_ SETPARINT(’’APT_NC_FACTOR_SWITCH’’,1).
•
Factor Origin (I4_APT_NC_FACTOR_ORIGIN):
If this switch is set, ORIGIN parameter values, which contain a linear measurement unit, will be multiplied by the conversion factor between the linear measurement used in the APT file and the linear
measurement to be generated in the NC data. i.e. the linear measurement unit of the values used in
the ORIGIN statement is the same as the one used in the CAD system.
If the switch is not set, the linear measurement unit of the values in the ORIGIN statement is the
same as the one of the tool machine.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0 (do
not use factor) or 1 (use factor). e.g. OLD = CF_ SETPARINT(’’APT_NC_FACTOR_ORIGIN’’,1)
•
Factor APT-ISO general (R8_APT_NC_FACTOR_GENERAL):
This parameter defines the conversion factor between the linear measurement used in the APT file
and the linear measurement to be generated in the NC data. This is necessary if the units between
APT and ISO differs, for example the APT is in inch and the tool machine needs mm. A term e.g. 1/
254 will be evaluated.
•
Linear tolerance (R8_LINEAR_TOLERANCE):
This parameter defines the accuracy to which the calculated coordinates are to be rounded.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 113
Chapter 5 - cPost Tab Pages
5.4.1.3
ISO SETTINGS
•
Record format fixed (I4_RECORD_FORMAT_FIXED):
This switch defines if the fields after the last character in the NC records are filled with blanks up to
the record length or not. If selected, a record length must be defined also.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0
(format not fixed) or 1 (fixed format). e.g. OLD = CF_ SETPARINT(’’RECORD_FORMAT_FIXED’’,1)
•
Record length (I4_NC_DATA_REC_LENGTH):
If iso record length is fixed, this parameter must be defined. cPost will format all iso records to this
length.
•
Delete Blanks (I4_NOBLANK):
This parameter defines if blanks in the ISO file will be deleted or not. If selected, no blank will be output.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0 (do
not delete) or 1 (delete). e.g. OLD = CF_ SETPARINT(’’NOBLANK’’,1).
•
Decimal point in ISO file (STR_DECIMAL_POINT_REPRESENTATION):
This parameter defines the character symbol of the decimal point in the iso file.
Enter (.) here as default. To create the coordinates format of the HEIDENHAIN controller, enter (,)
here.
If the controller requires no decimal point, the number of decimal places defines the dimension unit
(1/100 mm, mm, ...). In this case the minimum and maximum number of decimal places must be
identical.
Attention: This parameter can be modified with the macro function CF_SetParStr$.
e.g. OLD$ = CF_ SETPARSTR$("DECIMAL_POINT_REPRESENTATION",";")
•
End of iso record symbol (STR_END_OF_RECORD_SYMBOL):
Definition of an end-of-line-character in case the controller requires it. cPost appends this symbol at
the end of each iso record.
Attention: This parameter can be modified with the macro function CF_SetParStr$.
e.g. OLD$ = CF_ SETPARSTR$("END_OF_RECORD_SYMBOL",";")
Page 114
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.1.4
REPORT SETTINGS
•
Report apt sequence
• free text (BLK_REPORT_APT):
If this sequence is defined, it will be output in the report file instead of the original APT record.
The original APT records can be accesssed with the pool variable C_APTLINE and the
number of the record with C_APTLINE_NB.
A possible sequence is:
'APT NUMBER ';C_APTLINE_NB;N5%5.-0;' RECORD ';C_APTLINE;S;$;
•
Report iso sequence
• free text (BLK_REPORT_ISO):
If this sequence is defined, it will be output in the report file instead of the original ISO record.
The orginal ISO records can be accesssed with the pool variable C_ISOLINE.
A possible sequence is:
'ISO :';C_ISOLINE;S;$;
•
Mixed output (APT + NC) in reportfile (I4_PROTOCOL_APT_NC):
If this switch is set, the report contains alternately APT lines and generated NC lines.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0 (no
mixed output) or 1 (mixed output). e.g. OLD = CF_ SETPARINT(’’PROTOCOL_APT_NC’’,1) .
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 115
Chapter 5 - cPost Tab Pages
5.4.2
RECORD NUMBERING
•
Adress and format of the record number
• Address parameter
• Adress and Format of the record number (ADR_RECORD_NUMBER):
This parameter defines format and address of each record number. The actual next record
number can be accessed with the pool variable C_RECORD_NUMBER.
• Format
•
Output of record number without address (I4_RECORD_NB_OUTPUT):
This parameter determines if the output of the record number should also be output without an
address character.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0 (no
output) or 1 (output). e.g. OLD = CF_ SETPARINT(’’RECORD_NB_OUTPUT’’,1)
•
First record number (I4_REC_NUM_FIRST):
This parameter defines the first record number. A new starting value can be defined with the APT
command SEQNO.
•
Record number increment (I4_REC_NUM_INCR):
This parameter defines the record number increment. The value may be modified with the APTcommand SEQNO. The actual increment is accessible with the pool variable
C_REC_NUMBER_INC.
•
Maximum record number (I4_REC_NUM_MAX):
Definiton of maximum record number. When reaching this value, the Post Processor reset the counter and a warning is included in the report.
Page 116
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.3
BEGIN/END COMMANDS
5.4.3.1
GENERAL
•
Program end command
• Address parameter
• Program end command (ADR_PROGRAM_END):
This parameter defines the command which will be output at the end of an ISO program.
•
Program stop command
• Address parameter
• Program stop command (ADR_PROGRAM_STOP):
This parameter defines the command which causes an interruption of the ISO program. It will
be output if the APT command STOP is programmed.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 117
Chapter 5 - cPost Tab Pages
5.4.3.2
SEQUENCES
•
Program begin block without recnr
• Address parameter block
• free text (BLK_PRG_BEGIN_WO_RCNUM):
This sequence is the first one to be output in the ISO file. The program name should be
defined here.
This sequence is also important to define own variables because this sequence is the first
thing to be interpreted at the beginning. A possible header with some variable initialisation
could be:
'%';C_PARTNO(1);S;$;
MY_INT=7; MY_TEXT='nothing'; MY_REAL=8.7*5;
•
Program begin block with recnr
• Address parameter block
• free text (BLK_PRG_BEGIN_WITH_RCNUM):
This sequence is output immediately after the block without record numbers. In most cases it
is used for tool tables, origin tables and so on.
A possible ORIGIN table (only X value and first command) would be:
;#;TABLE(C_ORIGIN_MANUAL_1ST,C_ORIGIN_MAN_X_AXIS);C_ORIGIN_MANUAL_1ST
_C;S;' X';C_ORIGIN_MAN_X_AXIS;N1%4.4%1;$;#;$;
Page 118
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
•
Program end block with recnr
• Address parameter block
• free text (BLK_PRG_END_WITH_RCNUM):
This sequence will be output at the end of the program. It could be used to define the ending
sequence for the controller.
•
Program end block without recnr
• Address parameter block
• free text (BLK_PRG_END_WO_RCNUM):
This is the last sequence which is output.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 119
Chapter 5 - cPost Tab Pages
5.4.4
ISO CODE STRUCTURE
5.4.4.1
SUBPROGRAMS
•
Subprogram definition sequence
• Address parameter block
• free text (BLK_SUBPROG_DEF):
This sequence defines the beginning of a subprogram. The structure of customer defined
subprograms in APT sources is:
.....
DEFSUB/100
..... This is the customers subprogram.
ENDSUB/100
.....
CALSUB/100,1 1st call
.....
CALSUB/100,1 2nd call
It is output if the APT command DEFSUB/n is programmed. Available variables are:
C_SUB_PROG_ID: subprogram number (n)
Page 120
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
•
Subprogram end sequence
• Address parameter block
• free text (BLK_SUBPROG_END):
This sequence defines the ending of a subprogram. The structure of customer defined subprograms in APT sources is:
.....
DEFSUB/100
..... This is the customers subprogram.
ENDSUB/100
.....
CALSUB/100,1 1st call
.....
CALSUB/100,1 2nd call
It is output if the APT command ENDSUB/n is programmed. Available variables are:
C_SUB_PROG_ID: subprogram number (n)
•
Subprogram call sequence
• Address parameter block
• free text (BLK_SUBPROG_CALL):
This sequence defines the calling of a customer defined subprogram. The structure of these
subprograms in APT sources is:
.....
DEFSUB/100
..... This is the customers subprogram.
ENDSUB/100
.....
CALSUB/100,1 1st call
.....
CALSUB/100,1 2nd call
It is output if the APT command CALSUB/n1,n2 is programmed. Available variables are:
C_SUB_PROG_ID: subprogram number (n1)
C_SUB_NB_OF_REP: subprogram number of repetition (n2)
•
Subprogram call sequence (ext)
• Address parameter block
• free text (BLK_SUBPROG_CALL_EXT):
This sequence defines the calling of a controller subprogram. It is output if the APT command
CALSUB/EXTERN, n1,n2 is programmed.
Available variables are:
C_SUB_PROG_ID: subprogram number (n1)
C_SUB_NB_OF_REP: subprogram number of repetition (n2)
•
Position of subprograms (I4_SUB_PROG_POS):
This parameter defines the position of subprograms in the NC data.
Attention: This parameter must not can be modified with the macro function CF_SETPARINT.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 121
Chapter 5 - cPost Tab Pages
5.4.4.2
REPITITIONS
•
Repitition command
• Address parameter
• Repitition command (ADR_REPETITION_COMMAND):
This parameter defines the command to repeat program parts. The structure of repetitions in
APT sources is:
.....
REWIND/ON,1
..... This part shall be repeated.
REWIND/OFF,1
.....
REWIND/OUT,1,5 Repeat the above defined part 5 times
.....
If the complete repeat command record looks like N100 G14 I5 N1=10 N2=90, you must input
G14 here.
• Format
•
Address of nb of repititions
• Address parameter
• Address of nb repititions (ADR_NUMBER_OF_REPETITIONS):
This parameter defines the address of the program part repeatition number. It is output when
a REWIND/OUT,n1,n2 is programmed. The structure of repetitions in APT sources is:
.....
REWIND/ON,1
..... This part shall be repeated.
REWIND/OFF,1
.....
REWIND/OUT,1,5 Repeat the above defined part 5 times
.....
If the complete repeat command record looks like N100 G14 I5 N1=10 N2=90 and I is the
address of the repetition number, you must input I here.
• Format
Page 122
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
•
Address of starting record nb
• Address parameter
• Address of starting record nb (ADR_START_OF_REPETITION_RECORD_NUMBER):
This parameter defines the address for identification of the first block number of a program
segment which is to be repeated. It is output when a REWIND/OUT,n1,n2 is programmed.
The structure of repetitions in APT sources is:
.....
REWIND/ON,1
..... This part shall be repeated.
REWIND/OFF,1
.....
REWIND/OUT,1,5 Repeat the above defined part 5 times
.....
If the complete repeat command record looks like N100 G14 I5 N1=10 N2=90 and N1=I is the
address of starting record number of the repetition, you must input N1= here.
• Format
•
Address of ending record nb
• Address parameter
• Address of ending record nb (ADR_END_OF_REPETITION_RECORD_NUMBER):
This parameter defines the address for identification of the last record number of a program
segment which is to be repeated. It is output when a REWIND/OUT,n1,n2 is programmed.
The structure of repetitions in APT sources is:
.....
REWIND/ON,1
..... This part shall be repeated.
REWIND/OFF,1
.....
REWIND/OUT,1,5 Repeat the above defined part 5 times
.....
If the complete repeat command record looks like N100 G14 I5 N1=10 N2=90 and N1=I is the
address of the last record number of the repetition, you must input N2= here.
• Format
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 123
Chapter 5 - cPost Tab Pages
5.4.5
M AND G CODES
5.4.5.1
ABS_INCR
•
Incremental on command
• Address parameter
• Incremental on command (ADR_INCREMENTAL_ON):
This command defines that the following coordinate entries always relate to the current tool
position (incremental dimension or incremental programming). It is output when a MODE/
INCR,ON is programmed.
Available pool variable is:
C_INCREMENTAL_ON (0: absolute programming | 1: incremental programming)
•
Incremental off command
• Address parameter
• Incremental off command (ADR_ABSOLUTE_ON):
This command defines that the following coordinate entries always relate to the current tool
position (incremental dimension or incremental programming). It is output when a MODE/
INCR,OFF is programmed.
Available pool variable is:
C_INCREMENTAL_ON (0: absolute programming | 1: incremental programming)
Page 124
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.5.2
AUX-, PREFUN
•
Address AUXFUN command
• Address parameter
• Adress AUXFUN command (ADR_AUXFUN):
This parameter defines the output address of the APT command
AUXFUN/n, {NOW | NEXT | LAST}.
The first parameter after AUXFUN is only accepted if it is numeric. The second is not necessary and defines how it is output.
• Format
•
Address PREFUN command
• Address parameter
• Address of PREFUN command (ADR_PREFUN):
This parameter defines the output address of the APT command
PREFUN/n, {NOW | NEXT | LAST}.
The first parameter after PREFUN is only accepted if it is numeric. The second is not necessary and defines how it is output. .
• Format
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 125
Chapter 5 - cPost Tab Pages
5.4.5.3
DELAY
•
Delay command
• Address parameter
• Delay command (ADR_DELAY):
This command defines an accurate stop only in the next ISO record. It is output if a DELAY is
programmed.
If the iso command is G09 the output of the APT sequence:
DELAY
GOTO/100,100,100,0,0,1
is
N100 G01 G09 X100 Y100 Z100
•
Delay on command
• Address parameter
• Delay on command (ADR_DELAY_ON):
This parameter switches the accurate stop on. It is output when a DELAY/ON is programmed.
•
Delay off command
• Address parameter
• Delay off command (ADR_DELAY_OFF):
This parameter switches the accurate stop off and so contour milling is reactivated. It is output
when a DELAY/OFF is programmed.
Page 126
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.5.4
DWELL
•
Dwell command
• Address parameter
• Dwell command (ADR_DWELL):
This parameter is used to define waiting times in the iso file. It is output when a DWELL/n is
programmed.
If the iso command looks like G4 X5, you must define here a G4 X.
• Format
•
Dwell time factor (R8_DWELL_TIME_FACTOR):
If the unit of the waiting time in the iso file is not second, you must define here a conversation factor.
For example some INDEX machines program their waiting times in minutes. In this case you must
define the factor 0.01667.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 127
Chapter 5 - cPost Tab Pages
5.4.6
MOTIONS
5.4.6.1
COMMANDS
•
Rapid command:
• Address parameter
• Rapid command (ADR_RAPID):
This parameter defines the command for rapid movement. Generated by the APT-Words
RAPID
GOTO/x, y, z
•
Rapid command (2nd part):
• Address parameter
• Rapid command (2nd part) (ADR_RAPID_2ND):
This parameter defines the second part of the RAPID command, in case the controller
requires a divided (two parts) RAPID command.
The following is a HEIDENHAIN controller example:
Rapid motion in ISO: L X100 Y100 Z100 FMAX
Definition:
Rapid command: L
Rapid command (2nd part): FMAX or F9999
•
Linear interpolation command:
• Address parameter
• Linear interpolation command (ADR_LINEAR_INTERPOLATION):
This parameter defines the command for linear movement. It is generated by the APT-Word:
GOTO/x, y, z
Page 128
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
•
Linear interpolation command (2nd):
• Address parameter
• Linear interpolation command (2nd) (ADR_LINEAR_INTERPOLATION_2ND):
This parameter defines the second part of the linear motion statement, in case the controller
requires a divided command (two parts).
•
Circle command right:
• Address parameter
• Circle command right (ADR_CIRCULAR_INTERPOLATION_RIGHT):
This parameter defines the command for a motion statement along circular path clockwise.
•
Circle command left:
• Address parameter
• Circle command left (ADR_CIRCULAR_INTERPOLATION_LEFT):
This parameter defines the command for a motion statement along circular path counter
clockwise for milling
•
Circle command (2nd):
• Address parameter
• Circle command (2nd) (ADR_CIRCULAR_INTERPOLATION_2ND):
The output of the circle can be adapted, if the circle definition of the NC-controller deviates
from the usual standard.
Attention: The 2nd and 3rd part hold true for both rotation directions.
A possible circle definition is explained using the HEIDENHAIN-controller as an example:
Cicular interpolation CLW: DR+
Circular interpolation CCLW: DRCircular interpolation (2nd part): CC
Circular interpolation (3rd part): C
Using the respective priorities of the coordinates and these commands, a circle definition can
be created with the expected controller format.
•
Circle command (3rd):
• Address parameter
• Circle command (3rd) (ADR_CIRCULAR_INTERPOLATION_3RD):
The output of the circle can be adapted, if the circle definition of the NC-controller deviates
from the usual standard.
Attention:
The 2nd and 3rd part hold true for both rotation directions.
A possible circle definition is explained using the HEIDENHAIN-controller as an example:
Cicular interpolation CLW: DR+
Circular interpolation CCLW: DRCircular interpolation (2nd part): CC
Circular interpolation (3rd part): C
Using the respective priorities of the coordinates and these commands, a circle definition can
be created with the expected controller format.
•
GOHOME command:
• Address parameter
• GOHOME command (ADR_GOHOME):
This parmeter defines the command which is generated with the APT command GOHOME.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 129
Chapter 5 - cPost Tab Pages
5.4.6.2
COMMANDS LATHE
•
Rapid command:
• Address parameter
• Rapid commands (ADR_RAPID_LATHE):
This parameter defines the command for rapid movement. Generated by the APT-Words
RAPID
GOTO/x, y, z
•
Rapid command (2nd part):
• Address parameter
• Rapid command (2nd part) (ADR_RAPID_2ND_LATHE):
This parameter defines the second part of the RAPID command, in case the controller
requires a divided (two parts) RAPID command.
The following is a HEIDENHAIN controller example:
Rapid motion in ISO: L X100 Y100 Z100 FMAX
Definition:
Rapid command: L
Rapid command (2nd part): FMAX or F9999
•
Linear interpolation command lathe:
• Address parameter
• Linear interpolation command lathe (ADR_LINEAR_INTERPOLATION_LATHE):
This parameter defines the command for linear movement. It is generated by the APT-Word:
GOTO/x, y, z
•
Linear interpolation command lathe (2nd):
• Address parameter
• Linear interpolation command lathe (2nd) (ADR_LINEAR_INTERPOLATION_2ND_LATHE):
This parameter defines the second part of the linear motion statement, in case the controller
requires a divided command (two parts).
Page 130
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
•
Circle command right:
• Address parameter
• Circle command right (ADR_CIRCULAR_INTERPOLATION_RIGHT_LATHE):
Commands producing tool motions along a circular path in clockwise direction.
•
Circle command left:
• Address parameter
• Circle command left (ADR_CIRCULAR_INTERPOLATION_LEFT_LATHE):
This parameter defines the command for a motion statement along circular path counter
clockwise for turning.
•
Circle command (2nd):
• Address parameter
• Circle command (2nd) (ADR_CIRCULAR_INTERPOLATION_2ND_LATHE):
The output of the circle can be adapted, if the circle definition of the NC-controller deviates
from the usual standard.
Attention:
The 2nd and 3rd part hold true for both rotation directions.
A possible circle definition is explained using the HEIDENHAIN-controller as an example:
Cicular interpolation CLW: DR+
Circular interpolation CCLW: DRCircular interpolation (2nd part): CC
Circular interpolation (3rd part): C
Using the respective priorities of the coordinates and these commands, a circle definition can
be created with the expected controller format.
•
Circle command (3rd):
• Address parameter
• Circle command (3rd) (ADR_CIRCULAR_INTERPOLATION_3RD_LATHE):
The output of the circle can be adapted, if the circle definition of the NC-controller deviates
from the usual standard.
Attention:
The 2nd and 3rd part hold true for both rotation directions.
A possible circle definition is explained using the HEIDENHAIN-controller as an example:
Cicular interpolation CLW: DR+
Circular interpolation CCLW: DRCircular interpolation (2nd part): CC
Circular interpolation (3rd part): C
Using the respective priorities of the coordinates and these commands, a circle definition can
be created with the expected controller format.
•
GOHOME command:
• Address parameter
• GOHOME command (ADR_GOHOME_LATHE):
This parmeter defines the command which is generated with the APT command GOHOME.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 131
Chapter 5 - cPost Tab Pages
5.4.6.3
SEQUENCES
•
Rapid sequence:
• Address parameter block
• free text (BLK_OUTPUT_RAPID):
This sequence is only necessary if the iso syntax is very strange, for example like RML or
without coordiante addresses. If this sequence is defined, each RAPID GOTO will output this
sequence.
•
Linear sequence:
• Address parameter block
• free text (BLK_OUTPUT_LINEAR):
This sequence is only necessary if the iso syntax is very strange, for example like RML or
without coordiante addresses. If this sequence is defined, each GOTO will output this
sequence.
•
Circle CLW sequence:
• Address parameter block
• free text (BLK_OUTPUT_CIRCLE_CLW):
This sequence is only necessary if the iso syntax is very strange, for example like RML or
without coordiante addresses. If this sequence is defined, each circle in CLW direction will
output this sequence.
Page 132
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
•
Circle CCLW sequence:
• Address parameter block
• free text (BLK_OUTPUT_CIRCLE_CCLW):
This sequence is only necessary if the iso syntax is very strange, for example like RML or
without coordiante addresses. If this sequence is defined, each circle in CCLW direction will
output this sequence.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 133
Chapter 5 - cPost Tab Pages
5.4.6.4
ADVANCED
5.4.6.4.1
CIR2PT
•
CIRPT sequence:
• Address parameter block
• free text (BLK_CIRCLE_TWO_POINTS):
This sequence is for the output of circles which are described by two points. These circles can
rest on any plane. See also Siemens manual: CIP
The syntax in the APT source is
CIR2PT
GOTO/ via point
GOTO/ end point
The iso defining sequence could be:
G11 X100 Y200 Z300 U40 V50 (Via point)
G11 X200 Y300 Z400 U40 V50 (End point)
In this case the definition sequence is:
'G11 X';C_AXIS_X_NXT_VIA;K;'Y';C_AXIS_Y_NXT_VIA;K;'Z';
C_AXIS_Z_NXT_VIA;K;' U';C_AXIS_C_NXT_VIA;K;' V';C_AXIS_A_NXT_VIA;K;$; '
G11 X';C_AXIS_X_NXT_POS;K;' Y';C_AXIS_Y_NXT_POS;K;' Z';C_AXIS_Z_NXT_POS;K;'
U';C_AXIS_C_NXT_POS;K;' V';C_AXIS_A_NXT_POS;K;$;
Available pool variables:
C_AXIS_X_NXT_VIA X coordiante of via point
C_AXIS_Y_NXT_VIA Y coordiante of via point
C_AXIS_Z_NXT_VIA Z coordiante of via point
C_AXIS_A_NXT_VIA A coordiante of via point
C_AXIS_B_NXT_VIA B coordiante of via point
C_AXIS_C_NXT_VIA Ccoordiante of via point
C_AXIS_X_NXT_POS X coordiante of end point
C_AXIS_Y_NXT_POS Y coordiante of end point
C_AXIS_Z_NXT_POS Z coordiante of end point
C_AXIS_A_NXT_POS A coordiante of end point
C_AXIS_B_NXT_POS B coordiante of end point
C_AXIS_C_NXT_POS C coordiante of end point
Page 134
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.6.4.2
•
NURBS
Supress NURBS start/end block when same definition (I4_NURBS_SUP_SAME_DEF):
cPost support 3 different kinds of NURBS:
- 3 axis NURBS without MULTAX active
- 3 axis NURBS with MULTAX active (fixed axis)
- 5 axis NURBS
There are 3 sequences available for these NURBS. One for the header and first point, one for each
pole of the NURB and one for the end of the NURB.
If 2 NURBS are directly consecutive, cPost has the possibility to suppress the ending sequence of
the first and the header sequence of the second when the last pole of the first and the first pole of
the second are equal and the degrees of the NURBS are also equal.
The consideration of the feed is also defined with this parameter.
This switch defines the output when a 3 axis NURB is followed by a 3 axis NURB or a 5 axis by a 5
axis and so on. There are the following possibilities:
- Don’t suppress
This means the end and the header sequence is output each time.
The internal value of this parameter is set to 0.
- Suppress if equal (Feed included)
This means the end and the header sequence is suppressed when the poles, the degree and the
feed are equal.
The internal value of this parameter is set to 1.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 135
Chapter 5 - cPost Tab Pages
- Suppress if equal (Feed not included)
This means the end and the header sequence is suppressed when the poles, the degree are equal.
The feed is not considered.
The internal value of this parameter is set to 2.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0 (do
not suppress) or 1 (suppress).
e.g. OLD = CF_ SETPARINT("NURBS_SUP_SAME_DEF",1)
•
Supress NURBS start/end block when differ definition (I4_NURBS_SUP_DIFFER_DEF):
cPost support 3 different kinds of NURBS:
- 3 axis NURBS without MULTAX active
- 3 axis NURBS with MULTAX active (fixed axis)
- 5 axis NURBS
There are 3 sequences available for these NURBS. One for the header and first point, one for each
pole of the NURB and one for the end of the NURB.
If 2 NURBS are directly consecutive, cPost has the possibility to suppress the ending sequence of
the first and the header sequence of the second when the last pole of the first and the first pole of
the second are equal and the degrees of the NURBS are also equal.
The consideration of the feed is also defined with this parameter.
This switch defines the output when a 3 axis NURB is followed by a 5 axis NURB or vicec versa.
There are the following possibilities:
- Don’t suppress
This means the end and the header sequence is output each time.
The internal value of this parameter is set to 0.
- Suppress if equal (Feed included)
This means the end and the header sequence is suppressed when the poles, the degree and the
feed are equal.
The internal value of this parameter is set to 1.
- Suppress if equal (Feed not included)
This means the end and the header sequence is suppressed when the poles, the degree are equal.
The feed is not considered.
The internal value of this parameter is set to 2.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0 (do
not suppress) or 1 (suppress).
e.g. OLD = CF_ SETPARINT("NURBS_SUP_DIFFER_DEF",1)
•
NURBS start sequence:
• Address parameter block
• free text (BLK_NURBS_BEGINN):
This block defines the output of the definition and first point of the NURBS.
Example:
general syntax form:
BEGIN NURBS (DEG=3,FED=100.000000,AXIS=0.000000,0.000000,1.000000);
N0, X=2.000100, Y=-8.000000, Z=10.000000, DK=0.000000, W=1.000000;
or Siemens syntax form:
BEGIN NURBS_SIEMENS (D=3,F=100.000000,AXIS=0.000000,0.000000,1.000000);
N0,XT=2.000100,YT=-8.000000,ZT=10.000000, DK=0.000000,W=1.0000;
Page 136
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
available variables from definition line:
C_NURB_DEG Degree of the NURBS
C_NURB_FEED Feedrate value
available variables from pole line:
C_NURB_DK Increment of nodal parameter of pole
C_NURB_W Weight of the pole
C_NURB_POLE_X_AXIS_T X coordiante of the pole
C_NURB_POLE_Y_AXIS_T Y coordiante of the pole
C_NURB_POLE_Z_AXIS_T Z coordiante of the pole
•
NURBS sequence for each point:
• Address parameter block
• free text (BLK_NURBS_POINT):
This sequence defines the output for each point of the 3 axis NURB.
Example:
general syntax form:
N1, X=2.000100, Y=-8.000000, Z=10.000000, DK=0.000000, W=1.000000;
or Siemens syntax form:
N1,XT=2.000100,YT=-8.000000,ZT=10.000000, DK=0.000000,W=1.0000;
available variables from pole line:
C_NURB_DK Increment of nodal parameter of pole (0.0)
C_NURB_N Number of the pole (1)
C_NURB_W Weight of the pole (1.0)
C_NURB_POLE_X_AXIS_T X coordiante of the pole (2.0001)
C_NURB_POLE_Y_AXIS_T Y coordiante of the pole (-8.0)
C_NURB_POLE_Z_AXIS_T Z coordiante of the pole (10.0)
•
NURBS end sequence
• Address parameter block
• free text (BLK_NURBS_END):
This block defines the output of the NURBS end sequence. It is output when an END NURBS
is programmed.
•
NURBS fixed tool axis start sequence:
• Address parameter block
• free text (BLK_NURBS_BEGINN_FIXED_AXIS):
This block defines the output of the definition and first point of the 5 axis NURBS with fixed
tool axis. MULTAX mode is active.
Example:
general syntax form:
BEGIN NURBS (DEG=3,FED=100.000000,AXIS=0.000000,1.000000,0.000000);
N0, X=2.000100, Y=-8.000000, Z=10.000000, DK=0.000000, W=1.000000;
or Siemens syntax form:
BEGIN NURBS_SIEMENS (D=3,F=100.000000,AXIS=0.000000,1.000000,0.000000);
N0,XT=2.000100,YT=-8.000000,ZT=10.000000, DK=0.000000,W=1.0000;
available pool variables from definition line:
C_NURB_DEG
Degree of the NURBS
C_NURB_FEED
Feedrate value
C_NURB_FEED_DIFF Feedrate differs from last definition (1) is the same (0)
C_NURB_FIXED_AXIS_X X component of tool axis vector
C_NURB_FIXED_AXIS_Y Y component of tool axis vector
C_NURB_FIXED_AXIS_Z Z component of tool axis vector
available pool variables from pole line:
C_NURB_DK
Increment of nodal parameter of pole
C_NURB_W
Weight of the pole
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 137
Chapter 5 - cPost Tab Pages
C_NURB_POLE_X_AXIS_T X coordiante of the pole
C_NURB_POLE_Y_AXIS_T Y coordiante of the pole
C_NURB_POLE_Z_AXIS_T Z coordiante of the pole
•
NURBS fixed tool axis sequence for each point:
• Address parameter block
• free text (BLK_NURBS_POINT_FIXED_AXIS):
This sequence defines the output for each point of the 5 axis NURB with fixed tool axis.
Example:
general syntax form:
N1, X=2.000100, Y=-8.000000, Z=10.000000, DK=0.000000, W=1.000000;
or Siemens syntax form:
N1,XT=2.000100,YT=-8.000000,ZT=10.000000, DK=0.000000,W=1.0000;
available pool variables from pole line (example values are in brakets):
C_NURB_DK
Increment of nodal parameter of pole (0.0)
C_NURB_N
Number of the pole (1)
C_NURB_W
Weight of the pole (1.0)
C_NURB_POLE_X_AXIS_T X coordiante of the pole (2.0001)
C_NURB_POLE_Y_AXIS_T Y coordiante of the pole (-8.0)
C_NURB_POLE_Z_AXIS_T Z coordiante of the pole (10.0)
•
NURBS fixed tool axis end sequence:
• Address parameter block
• free text (BLK_NURBS_END_FIXED_AXIS):
This block defines the end sequence of the multax NURBS with fixed tool axis. It is output
when an END NURBS is programmed and the actual NURB is a 5 axis NURB with fixed tool
axis.
•
NURBS multax start sequence:
• Address parameter block
• free text (BLK_NURBS_BEGINN_FIVE):
This block defines the output of the definition and first point of the multax NURBS.
Example:
general syntax form:
BEGIN NURBS (DEG=3,FED=100.000000,AXIS=VAR,LENGTH=50.000000);
N0,XT=-129.555634,YT=143.316668,ZT=2.428110, $
XH=-141.659597,YH=132.429643,ZH=49.703545, DK=0.000000,W=1.0000;
or Siemens syntax form:
BEGIN NURBS_SIEMENS (DEG=3,FED=100.000000,AXIS=VAR,LENGTH=50.000000);
N0,XT=-129.555634,YT=143.316668,ZT=2.428110, $
XH=-141.659597,YH=132.429643,ZH=49.703545, DK=0.000000,W=1.0000;
available variables from definition line:
C_NURB_DEG Degree of the NURBS
C_NURB_FEED Feedrate value available variables from pole line:
C_NURB_DK Increment of nodal parameter of pole
C_NURB_W Weight of the pole C_NURB_POLE_X_AXIS_T X coordiante of the pole
C_NURB_POLE_Y_AXIS_T Y coordiante of the pole
C_NURB_POLE_Z_AXIS_T Z coordiante of the pole
C_NURB_POLE_X_AXIS_H X coordiante of the upper point
C_NURB_POLE_Y_AXIS_H Y coordiante of the upper point
C_NURB_POLE_Z_AXIS_H Z coordiante of the upper point
Page 138
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
•
NURBS multax sequence for each point:
• Address parameter block
• free text (BLK_NURBS_POINT_FIVE):
This sequence defines the output for each point of the multax NURB.
Example:
general syntax form:
N1,XT=-139.047409,YT=135.608471,ZT=-0.864843, $
XH=-151.897090,YH=124.144052,ZH=46.086676, DK=0.000000,W=1.0000;
or Siemens syntax form:
N1,XT=-139.047409,YT=135.608471,ZT=-0.864843, $
XH=-151.897090,YH=124.144052,ZH=46.086676, DK=0.000000,W=1.0000;
available variables from pole line:
C_NURB_DK Increment of nodal parameter of pole (0.0)
C_NURB_W Weight of the pole (1.0)
C_NURB_POLE_X_AXIS_T X coordiante of the pole (-139.047409)
C_NURB_POLE_Y_AXIS_T Y coordiante of the pole (135.608471)
C_NURB_POLE_Z_AXIS_T Z coordiante of the pole (-0.864843)
C_NURB_POLE_X_AXIS_H X coordiante of the upper point (-151.897090)
C_NURB_POLE_Y_AXIS_H Y coordiante of the upper point (124.144052)
C_NURB_POLE_Z_AXIS_H Z coordiante of the upper point (46.086676)
•
NURBS multax end sequence:
• Address parameter block
• free text (BLK_NURBS_END_FIVE):
This block defines the output of the multax NURBS end sequence. It is output when an END
NURBS is programmed.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 139
Chapter 5 - cPost Tab Pages
5.4.6.4.3
HSC
•
HSC on sequence:
• Address parameter block
• free text (BLK_HIGH_SPEED_MILLING_ON):
If this block is defined, it will be output each time the motion changes from rapid movement to
linear movement.
For example:
APT:
ISO:
RAPID
GOTO / 0, 0, 10
G0 X0 Y0 Z10
“Output of this block”
GOTO / 10, 0, 10
G1 X10 Y0 Z10
GOTO / 20, 0, 10
G1 X20 Y0 Z10
•
HSC off sequence:
• Address parameter block
• free text (BLK_HIGH_SPEED_MILLING_OFF):
If this block is defined, it will be output each time the motion changes from linear movement to
rapid movement.
For example:
APT:
ISO:
GOTO / 10, 0, 10
G1 X10 Y0 Z10
GOTO / 20, 0, 10
G1 X20 Y0 Z10
"Output of this block"
RAPID
GOTO / 20, 0, 20
G0 X20 Y0 Z10
Page 140
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.6.5
COORDINATES
5.4.6.5.1
GENERAL
•
Address of 1st axis:
• Address parameter
• Address of 1st axis (ADR_1ST_COORDINATE):
This parameter defines the address and format of motion coordinate for first axis for milling.
Available pool variable:
C_AXIS_X_ADR this parameter value
• Format
•
Address of 2nd axis:
• Address parameter
• Address of 2nd axis (ADR_2ND_COORDINATE):
This parameter defines the address and format of motion coordinate for the second axis for
milling.
Available pool variable:
C_AXIS_Y_ADR this parameter value
• Format
•
Address of 3rd axis:
• Address parameter
• Address of 3rd axis (ADR_3RD_COORDINATE):
This parameter defines the address and format of motion coordinate for the third axis for milling.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 141
Chapter 5 - cPost Tab Pages
•
Available pool variable:
C_AXIS_Z_ADR this parameter value
Format
•
Address of 1st axis (incr):
• Address parameter
• Address of 1st axis (incr) (ADR_1ST_COORDINATE_INCR):
This parameter defines the address and format of incremental motion coordinate for the first
axis for milling. It is necessary to define this parameter if the controller has no incremental on
or off command. The default values have the same address characters as absolute programming.
Available pool variable:
C_AXIS_X_ADR this parameter value
• Format
•
Address of 2nd axis (incr):
• Address parameter
• Address of 2nd axis (incr) (ADR_2ND_COORDINATE_INCR):
This parameter defines the address and format of incremental motion coordinate for the second axis for milling. It is necessary to define this parameter if the controller has no incremental on or off command. The default values have the same address characters as absolute
programming.
Available pool variable:
C_AXIS_Y_ADR this parameter value
• Format
•
Address of 3rd axis (incr):
• Address parameter
• Address of 3rd axis (incr) (ADR_3RD_COORDINATE_INCR):
This parameter defines the address and format of incremental motion coordinate for the third
axis for milling. It is necessary to define this parameter if the controller has no incremental on
or off command. The default values have the same address characters as absolute programming.
Available pool variable:
C_AXIS_Z_ADR this parameter value
• Format
•
Address of 1st axis circle center:
• Address parameter
• Address of 1st axis circle center (ADR_1ST_CIRCLE_CENTER_COORDINATE):
This parameter defines the coordinate address for the center of circles for milling.
• Format
•
Address of 2nd axis circle center:
• Address parameter
• Address of 2nd axis circle center (ADR_2ND_CIRCLE_CENTER_COORDINATE):
This parameter defines the coordinate address for the center of circles for milling.
• Format
•
Address of 3rd axis circle center:
• Address parameter
• Address of 3rd axis circle center (ADR_3RD_CIRCLE_CENTER_COORDINATE):
This parameter defines the coordinate address for the center of circles for milling.
• Format
•
Address of radius
• Address parameter
• Address of radius (ADR_CIRCLE_RADIUS_COORDINATE_MILL):
This parameter defines the output address of the circle radius for milling.
The radius is only generated if this address is defined.
• Format
Page 142
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
•
Address of circle angle coordinate
• Address parameter
• Address of circle angle coordinates (ADR_CIRCLE_ANGLE_COORDINATE_MILL):
This parameter is used to define the output address of the circular angle. If this address is
defined the output of the circle end point is suppressed.
If this address is not defined, the output of the angle is suppressed.
• Format
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 143
Chapter 5 - cPost Tab Pages
5.4.6.5.2
LATHE
•
Address of 1st axis:
• Address parameter
• Address of 1st axis (ADR_1ST_COORDINATE_LATHE):
This parameter defines the address and format of motion coordinate for first axis for turning.
Available pool variable:
C_AXIS_X_ADR this parameter value
• Format
•
Address of 2nd axis:
• Address parameter
• Address of 2nd axis (ADR_2ND_COORDINATE_LATHE):
TThis parameter defines the address and format of motion coordinate for the second axis for
turning.
Available pool variable:
C_AXIS_Y_ADR this parameter value
• Format
•
Address of 3rd axis:
• Address parameter
• Address of 3rd axis (ADR_3RD_COORDINATE_LATHE):
This parameter defines the address and format of motion coordinate for the third axis for turning.
Available pool variable:
C_AXIS_Z_ADR this parameter value
• Format
Page 144
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
•
Address of 1st axis (incr):
• Address parameter
• Address of 1st axis (incr) (ADR_1ST_COORDINATE_INCR_LATHE):
This parameter defines the address and format of incremental motion coordinate for the first
axis for turning. It is necessary to define this parameter if the controller has no incremental on
or off command. The default values have the same address characters as absolute programming.
Available pool variable:
C_AXIS_X_ADR this parameter value
• Format
•
Address of 2nd axis (incr):
• Address parameter
• Address of 2nd axis (incr) (ADR_2ND_COORDINATE_INCR_LATHE):
This parameter defines the address and format of incremental motion coordinate for the second axis for turning. It is necessary to define this parameter if the controller has no incremental on or off command. The default values have the same address characters as absolute
programming.
Available pool variable:
C_AXIS_Y_ADR this parameter value
• Format
•
Address of 3rd axis (incr):
• Address parameter
• Address of 3rd axis (incr) (ADR_3RD_COORDINATE_INCR_LATHE):
This parameter defines the address and format of incremental motion coordinate for the third
axis for turning. It is necessary to define this parameter if the controller has no incremental on
or off command. The default values have the same address characters as absolute programming.
Available pool variable:
C_AXIS_Z_ADR this parameter value
• Format
•
Address of 1st axis circle center:
• Address parameter
• Address of 1st axis circle center (ADR_1ST_CIRCLE_CENTER_COORDINATE_LATHE):
This parameter defines the coordinate address for the center of circles for tunring.
• Format
•
Address of 2nd axis circle center:
• Address parameter
• Address of 2nd axis circle center (ADR_2ND_CIRCLE_CENTER_COORDINATE_LATHE):
This parameter defines the coordinate address for the center of circles for turning.
• Format
•
Address of 3rd axis circle center:
• Address parameter
• Address of 3rd axis circle center (ADR_3RD_CIRCLE_CENTER_COORDINATE_LATHE):
This parameter defines the coordinate address for the center of circles for turning.
• Format
•
Address of radius
• Address parameter
• Address of radius (ADR_CIRCLE_RADIUS_COORDINATE_LATHE):
This parameter defines the output address of the circle radius for turning.
The radius is only generated if this address is defined.
• Format
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 145
Chapter 5 - cPost Tab Pages
•
Address of circle angle coordinate
• Address parameter
• Address of circle angle coordinates (ADR_CIRCLE_ANGLE_COORDINATE_LATHE):
This parameter is used to define the output address of the circular angle. If this address is
defined the output of the circle end point is suppressed. If this address is not defined, the output of the angle is suppressed
• Format
Page 146
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.6.5.3
5AXIS (MULTAX MACHINES)
•
Address of 1st rotary axis:
• Address parameter
• Address of 1st rotary axis (ADR_1ST_ROTARY_AXIS):
This parameter defines the address and format of motion coordinate of the first rotation axis.
Available pool variable:
C_AXIS_A_ADR this parameter value
• Format
•
Address of 1st rotary axis (2nd):
• Address parameter
• Address of 1st rotary axis (2nd) (ADR_1ST_ROTARY_AXIS_2ND):
This parameter defines the second part of the address of the 1st rotation axis. This is necessary for NC commands like A=DC(300).
The definition for an output like this is:
1st part of address: A=DC(
2nd part of address: )
• Format
•
Linear/Rollover 1st axis(I4_5X_TYPE_1ST_AXIS):
This parameter defines the type of the 1st rotary axis.The possible types are:
• Rollover axis, machine tool optimizes
The value of the angle is between 0 and 360 degrees without a prefix. The machine tool
chooses the shortest way to this angular position.
• Rollover axis, pp optimizes
The value of the angle is between -360 and 360 degrees. The prefix of the angle defines
the rotation direction. cPost chooses the shortest way to this angular position.
• Linear axis
The angular value is not restricted in positive or negative direction.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 147
Chapter 5 - cPost Tab Pages
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0
(rollover - machine tool), 1 (rollover - cPost) or 2 (linear).
e.g. OLD = CF_ SETPARINT(’’5X_TYPE_1ST_AXIS’’,1)
•
Address of 2nd rotary axis:
• Address parameter
• Address of 2nd rotary axis (ADR_2ND_ROTARY_AXIS):
This parameter defines the address and format of motion coordinate of the second rotation
axis.
Available pool variable:
C_AXIS_B_ADR this parameter value
• Format
•
Address of 2nd rotary axis (2nd):
• Address parameter
• Address of 2nd rotary axis (2nd) (ADR_2ND_ROTARY_AXIS_2ND):
This parameter defines the second part of the address of the 2nd rotation axis. This is necessary for NC commands like B=DC(300).
The definition for an output like this is:
1st part of address: B=DC(
2nd part of address: )
• Format
•
Linear/Rollover 2nd axis (I4_5X_TYPE_2ND_AXIS):
This parameter defines the type of the 2nd rotary axis.The possible types are:
• Rollover axis, machine tool optimizes
The value of the angle is between 0 and 360 degrees without a prefix. The machine tool
chooses the shortest way to this angular position.
• Rollover axis, pp optimizes
The value of the angle is between -360 and 360 degrees. The prefix of the angle defines
the rotation direction. cPost chooses the shortest way to this angular position.
• Linear axis
The angular value is not restricted in positive or negative direction.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0
(rollover - machine tool), 1 (rollover - cPost) or 2 (linear).
e.g. OLD = CF_ SETPARINT(''5X_TYPE_2ND_AXIS'',1)
•
Address of 3rd rotary axis:
• Address parameter
• Address of 3rd rotary axis (ADR_3RD_ROTARY_AXIS):
This parameter defines the address and format of motion coordinate of the first rotation axis.
Available pool variable:
C_AXIS_C_ADR this parameter value
• Format
•
Address of 3rd rotary axis (2nd):
• Address parameter
• Address of 3rd rotary axis (2nd) (ADR_3RD_ROTARY_AXIS_2ND):
This parameter defines the second part of the address of the 3rd rotation axis. This is necessary for NC commands like C=DC(300).
The definition for an output like this is:
1st part of address: C=DC(
2nd part of address: )
• Format
Page 148
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
•
Linear/Rollover 3rd axis (I4_5X_TYPE_3RD_AXIS):
This parameter defines the type of the 3rd rotary axis.The possible types are:
• Rollover axis, machine tool optimizes
The value of the angle is between 0 and 360 degrees without a prefix. The machine tool
chooses the shortest way to this angular position.
• Rollover axis, pp optimizes
The value of the angle is between -360 and 360 degrees. The prefix of the angle defines
the rotation direction. cPost chooses the shortest way to this angular position.
• Linear axis
The angular value is not restricted in positive or negative direction.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0
(rollover - machine tool), 1 (rollover - cPost) or 2 (linear).
e.g. OLD = CF_ SETPARINT(''5X_TYPE_3RD_AXIS'',1)
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 149
Chapter 5 - cPost Tab Pages
5.4.6.5.4
5AXIS EULER (MULTAX MACHINES)
•
Euler angle output 1st axis:
• Address parameter
• Euler angle output 1st axis (ADR_EULER_1ST_AXIS):
This parameter defines the address and format of motion coordinate of the first Euler axis.
There are 2 possible output of angles in multax mode. cPost output as default the machine
angles. If Euler angles output is necessary, you must switch on the Euler mode with the command MODE/EULER,ON. In this case you must also define the Euler axis and the order of
the axis in the tab page MOTIONS-->COORDINATES-->OPTIONS 5AXIS EULER
• Format
•
Euler angle output 1st axis (2nd):
• Address parameter
• Euler angle output 1st axis (2nd) (ADR_EULER_1ST_AXIS_2ND):
This parameter defines the address and format of motion coordinate of the first Euler axis.
There are 2 possible output of angles in multax mode. cPost output as default the machine
angles. If Euler angle output is necessary, you must switch on the Euler mode with the command MODE/EULER,ON. In this case you must also define the Euler axis and the order of
the axis in the tab page MOTIONS-->COORDINATES-->OPTIONS 5AXIS EULER
• Format
•
Euler angle output 2nd axis:
• Address parameter
• Euler angle output 2nd axis (ADR_EULER_2ND_AXIS):
This parameter defines the address and format of motion coordinate of the second Euler axis.
There are 2 possible output of angles in multax mode. cPost output as default the machine
Page 150
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
•
angles. If Euler angles output is necessary, you must switch on the Euler mode with the command MODE/EULER,ON. In this case you must also define the Euler axis and the order of
the axis in the tab page MOTIONS-->COORDINATES-->OPTIONS 5AXIS EULER
Format
•
Euler angle output 2nd axis (2nd):
• Address parameter
• Euler angle output 2nd axis (2nd) (ADR_EULER_2ND_AXIS_2ND):
This parameter defines the address and format of motion coordinate of the second Euler axis.
There are 2 possible output of angles in multax mode. cPost output as default the machine
angles. If Euler angle output is necessary, you must switch on the Euler mode with the command MODE/EULER,ON. In this case you must also define the Euler axis and the order of
the axis in the tab page MOTIONS-->COORDINATES-->OPTIONS 5AXIS EULER
• Format
•
Euler angle output 3rd axis:
• Address parameter
• Euler angle output 3rd axis (ADR_EULER_3RD_AXIS):
This parameter defines the address and format of motion coordinate of the third Euler axis.
There are 2 possible output of angles in multax mode. cPost output as default the machine
angles. If Euler angles output is necessary, you must switch on the Euler mode with the command MODE/EULER,ON. In this case you must also define the Euler axis and the order of
the axis in the tab page MOTIONS-->COORDINATES-->OPTIONS 5AXIS EULER
• Format
•
Euler angle output 3rd axis (2nd):
• Address parameter
• Euler angle output 3rd axis (2nd) (ADR_EULER_3RD_AXIS_2ND):
This parameter defines the address and format of motion coordinate of the thrid Euler axis.
There are 2 possible output of angles in multax mode. cPost output as default the machine
angles. If Euler angle output is necessary, you must switch on the Euler mode with the command MODE/EULER,ON. In this case you must also define the Euler axis and the order of
the axis in the tab page MOTIONS-->COORDINATES-->OPTIONS 5AXIS EULER
• Format
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 151
Chapter 5 - cPost Tab Pages
5.4.6.5.5
5AXIS ADD (MULTAX MACHINES)
•
Address of 1st tool axis:
• Address parameter
• Address of 1st tool axis (ADR_5X_1ST_TOOL_VECTOR):
This parameter defines the address for the output of the 1st vector component.
• Format
•
Address of 2nd tool axis:
• Address parameter
• Address of 2nd tool axis (ADR_5X_2ND_TOOL_VECTOR):
This parameter defines the address for the output of the 2nd vector component.
• Format
•
Address of 3rd tool axis:
• Address parameter
• Address of 3rd tool axis (ADR_5X_3RD_TOOL_VECTOR):
This parameter defines the address for the output of the 3rd vector component.
• Format
•
Factor of tool vector (R8_5X_TOOL_VECTOR_FACTOR):
This parameter defines the factor for the transformation from APT to ISO for the tool vector. The
APT input vector is multiplied with this factor. This parameter is necessary for controllers with limited
postdecimal digit number like Millplus.
Attention:
This parameter can be modified with the macro function CF_SETPARREAL. e.g. OLD = CF_ SETPARREAL(’’5X_TOOL_VECTOR_FACTOR’’,1000.0)
•
Output of tool vector (I4_TOOL_VECTOR_MODAL):
This parameter defines if the complete tool vector is modal or not. If the complete vector is set to
modal, the complete tool vector is only output if at least 2 axis change. If the X, Y and Z components don’t change, the output will be suppressed.
Attention: This parameter can be modified with the macro function CF_SETPARINT. The possible
values are 1 (output only if some components change) or 0 (output always all components).
e.g. OLD = CF_ SETPARINT("TOOL_VECTOR_MODAL",1)
Page 152
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.6.5.6
5X INTERMEDIATE POINTS (MULTAX MACHINES)
•
Create intermediate points on error (I4_5X_INTERMED_POINTS):
This parameter defines if cPost shall create intermediate points during linear motions or not. The
possible values are ’’do not create’’, ’’create only for linear movements’’ and ’’create for linear and
rapid movements’’. The number of the intermediate points depends on the value of the intermediate
point tolerance (R8_5X_INTERM_TOL).
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0
(no intermediate points), 1 (only for linear) or 2 (linear and rapid).
e.g. OLD = CF_ SETPARINT(’’5X_INTERMED_POINTS’’,1)
•
Intermediate point tolerance (R8_5X_INTERM_TOL):
This parameter is only necessary if cPost shall create intermediate points. It defines the accuracy of
a linear movement for 5 axes machining.
If the occurring deviation during the motion is greater than the defined value intermediate points are
generated. The number of intermediate points is dependent of this parameter.
•
Maximum angle delta 1st axis (R8_5X_ANG_DIFF_1ST):
If the pp calculates intermediate points, the maximum delta angle of the first rotary axis between two
motions can be defined with this parameter.
•
Maximum angle delta 2nd axis (R8_5X_ANG_DIFF_2ND):
If the pp calculates intermediate points, the maximum delta angle of the second rotary axis between
two motions can be defined with this parameter.
•
Maximum angle delta 3rd axis (R8_5X_ANG_DIFF_3RD):
If the pp calculates intermediate points, the maximum delta angle of the third rotary axis between
two motions can be defined with this parameter.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 153
Chapter 5 - cPost Tab Pages
5.4.6.5.7
OPTIONS
•
Skip FROM command (I4_SKIP_FROM):
This parameter defines if the FROM command is skipped or not. If selected, the FROM command is
suppressed.
Attention: This parameter cannot be modified with the macro function CF_SETPARINT.
•
Suppress 1st GOTO (I4_SUPRESS_FIRST_GOTO):
This parameter defines if the first GOTO command will be suppressed or not. If selected, the first
GOTO command is suppressed.
Attention: This parameter cannot be modified with the macro function CF_SETPARINT.
•
Split circles on quadrants (I4_SPLIT_CIRCLE):
This switch defines, if a circle is splitted into quadrants or not.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0 (no
splitting) and 1 (splitting). e.g. OLD = CF_ SETPARINT(’’SPLIT_CIRCLE’’,1)
•
Circle center absolute (I4_CIRCLE_CENTER_ABS):
This parameter defines, if output of circle center coordinates are absolute or relative. If selected the
circle center coordiantes are output absolute. If not, the circle center coordiantes are output relative
to the circle starting point.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0
(relative) or 1 (absolute). e.g. OLD = CF_ SETPARINT(’’CIRCLE_CENTER_ABS’’,1) .
•
circle linearization (I4_LIN_CIRCLE):
This parameter defines if cPost output circular movements or convert them to linear movements. If
the tool machine does not support circular movement, this switch must be selected.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0
(output circles) or 1 (convert them). e.g. OLD = CF_ SETPARINT(’’LIN_CIRCLE’’,1)
•
Tolerance for circle linearization (R8_LIN_CIRCLE_TOL):
This parameter defines the accuracy of the circle linearisation. It is only necessary if the circle linearisation switch is active.B243
•
Split RAPIDs (I4_SPLIT_RAPID):
This switch defines, if the RAPID GOTO is splitted into two RAPID GOTOs or not. The splitting
depends on the current toolaxis and the direction of the move. The first motion is parallel to the toolaxis and then vertical (RETRACT), or first vertical to the toolaxis and then parallel (APPROACH).
The splitting is only working if the toolvector is parallel to one of the principal axis.
For example:
The starting position is X=10.0, Y=0.0, Z=20.0 and the plane is XY (tool vector = 0,0,1).
Page 154
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
RAPID
GOTO 50.0, 50.0, 50.0
is splitted to
RAPID
GOTO 10.0, 0.0, 50.0
RAPID
GOTO 50.0, 50.0, 50.0
If the plane is XY2 (tool vector = 0,0,-1):
RAPID
GOTO 50.0, 50.0, 50.0
is splitted to
RAPID
GOTO 50.0, 50.0, 20.0
RAPID
GOTO 50.0, 50.0, 50.0
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0 (no
splitting) and 1 (splitting).
e.g. OLD = CF_ SETPARINT("SPLIT_RAPID" ,1)
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 155
Chapter 5 - cPost Tab Pages
5.4.6.5.8
OPTION 5AXIS (MULTAX MACHINES)
•
Machine controller supporting head RTCP (I4_HAS_RTCP):
This switch determines if the tool machine has a controller supporting RTCP. If the parameter is set,
the changes of the tool coordinates resulting from a rotation of rotary axis will be compensated automatically (Output of tool tip).If it is not set, the compensation is calculated by the postprocessor
(Output of pivot).
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0 (no
RTCP) and 1 (RTCP). e.g. OLD = CF_ SETPARINT(’’HAS_RTCP’’,1)
•
Machine controller supporting table RTCP (I4_HAS_RTCP_TABLE):
This parameter defines, if table rotations will activate a recalculation of the coordiantes or not. If it is
set, cPost will not recalculate the coordinates and the tool tip is output. If it is not set, the coordinates
will be recalculated and the pivot will be output..
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0 (no
RTCP) and 1 (RTCP). e.g. OLD = CF_ SETPARINT(’’HAS_RTCP_TABLE’’,1)
•
Rotary axis with min. delta G1 (I4_5X_MIN_ANG_DIFF_AXIS):
This parameter defines the choice of the angle solution in MULTAX for LINEAR movements. If there
are two possible angle solutions for the programmed tool position, the postprocessor must choose
one. You can define this condition with this parameter. The axis with the higher priority has always
the minimum angle difference. ’’default’’ means both axes differences are considered equal, A-axis
means the first rotation axis has the higher priority and the angle difference on this axis must be
minimum. B-axis means the second axis must be minimal, C-axis the third.
•
Page 156
Example:
1st axis
old angles 90130
new angles (1)
new angles (2)-50200
2nd axis
50 20
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
•
The decision is
default: ABS(90-50) +
1st solution
A-axis: ABS(90-50)
B-axis:
2nd solution
ABS(130-20)
< ABS(90+50) +ABS(130-200)-->
ABS(130-20)
< ABS(90+50) --> 1st solution
>
ABS(130-200)-->
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0
(default), 1 (A axis), 2 (B axis) and 3 (C axis).
e.g. OLD = CF_ SETPARINT(''5X_MIN_ANG_DIFF_AXIS'',0)
•
Rotary axis with min. delta G0 (I4_5X_MIN_ANG_DIFF):
This parameter defines the choice of the angle solution in MULTAX for RAPID movements. If there
are two possible angle solutions for the programmed tool position, the postprocessor must choose
one. You can define this condition with this parameter. The axis with the higher priority has always
the minimum angle difference. ’’default’’ means both axes differences are considered equal, A-axis
means the first rotation axis has the higher priority and the angle difference on this axis must be
minimum. B-axis means the second axis must be minimal, C-axis the third.
• Example:
1st axis
2nd axis
old angles 90130
new angles (1)
50 20
new angles (2)-50200
•
The decision is
default: ABS(90-50) +
1st solution
A-axis: ABS(90-50)
B-axis:
2nd solution
ABS(130-20)
< ABS(90+50) +ABS(130-200)-->
ABS(130-20)
< ABS(90+50) --> 1st solution
>
ABS(130-200)-->
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0
(default), 1 (A axis), 2 (B axis) and 3 (C axis).
e.g. OLD = CF_ SETPARINT(''5X_MIN_ANG_DIFF'',0)
•
Name of the “Position not possible” macro (STR_ANGLE_NOT_POSS):
This parameter defines the macro name for the macro which is automaticly inserted if all angle solutions are impossible because of machine limits. If this macro is not defined, cPost output an error
message and stops the ISO generation. If the macro name is defined, cPost inserts this macro and
continues the ISO generation.
•
Name of the “Best position not possible” macro (STR_ANGLE_BEST_NOT_POSS):
This parameter defines the macro name for the macro which is automaticly inserted if cPost cannot
choose the best angle solution in Multax mode. If this macro is not defined, cPost output a warning
that the best solution is impossible because of the angle limits of the machine. If the macro name is
defined, cPost suppresses the warning and inserts this macro.
Available pool variables are:
C_ANGLE_OPT_A_AXIS:
C_ANGLE_OPT_B_AXIS:
C_ANGLE_OPT_C_AXIS:
C_ANGLE_POSS_A_AXIS:
C_ANGLE_POSS_B_AXIS:
C_ANGLE_POSS_C_AXIS:
© CENIT AG Systemhaus
cPost Documentation V1R6
Best A axis angle, which cannot be choosen
Best B axis angle, which cannot be choosen
Best C axis angle, which cannot be choosen
Possible A axis angle
Possible B axis angle
Possible C axis angle
Page 157
Chapter 5 - cPost Tab Pages
Example:
Here is a macro which first retracts in old tool direction, then goes back to a safety plane, rotates to
the possible angle solution and approach to the new point.
The machine is a gantryhead with C axis (-360 minimum, 360 maximum) and B axis (-20 minimum,
70 maximum)
old position: B-15 C30
new position: B-25 C30 or B25 C210
no macro defined: pp outputs a warning because it must select the solution with maximum C delta
macro defined: pp inserts the macro before this position
Here is a macro which first retracts in old tool direction, then rotates to the possible angle solution
and approach to the old point:
A$=CF_FMTVAL$(C_ANGLE_POSS_A_AXIS,"*Angle")
B$=CF_FMTVAL$(C_ANGLE_POSS_B_AXIS,"*Angle")
C$=CF_FMTVAL$(C_ANGLE_POSS_C_AXIS,"*Angle")
CF_APTTXT ’INSERT/; RETRACT 100 mm in tool axis direction’
X$=CF_FMTVAL$(C_AXIS_X_CUR_APT_POS+ 100*C_AXIS_TLVEC_X_CUR,"*ACoord")
Y$=CF_FMTVAL$(C_AXIS_Y_CUR_APT_POS+ 100*C_AXIS_TLVEC_Y_CUR,"*ACoord")
Z$=CF_FMTVAL$(C_AXIS_Z_CUR_APT_POS+ 100*C_AXIS_TLVEC_Z_CUR,"*ACoord")
TX$=CF_FMTVAL$(C_AXIS_TLVEC_X_CUR,"*ACoord")
TY$=CF_FMTVAL$(C_AXIS_TLVEC_Y_CUR,"*ACoord")
TZ$=CF_FMTVAL$(C_AXIS_TLVEC_Z_CUR,"*ACoord")
CF_APTTXT ’GOTO /’ + X$ + ’,’ + Y$ + ’,’ + Z$ + ’,’ + TX$ + ’,’ + TY$ + ’,’ + TZ$
CF_APTTXT ’INSERT/; ROTATE THE C AXIS’
CF_APTTXT ’SETANG/’ + A$ + ’,’ + B$ + ’,’ + C$
CF_APTTXT ’GOTO /’ + X$ + ’,’ + Y$ + ’,’ + Z$ + ’, 0,0,1’
CF_APTTXT ’INSERT/; APPROACH’
X$=CF_FMTVAL$(C_AXIS_X_CUR_APT_POS,"K")
Y$=CF_FMTVAL$(C_AXIS_Y_CUR_APT_POS,"K")
Z$=CF_FMTVAL$(C_AXIS_Z_CUR_APT_POS,"K")
CF_APTTXT ’GOTO /’ + X$ + ’,’ + Y$ + ’,’ + Z$ + ’,’ + TX$ + ’,’ + TY$ + ’,’ + TZ$
•
Rotary Axis Output (I4_ROTAXIS_CLAMP_AUTO):
This parameter defines if cPost output the rotation axes coordiantes special or not. If the angles
shall be output only in a special sequence like unclamp axis - rotate - clamp axis, you must select
the sequences or the macro. In this case there is no normal output of any rotation axis. If the ordinary output is selected, the output of the coordianates is only dependent of the modality switch.
For example:
APT:
GOTO/ 10,0,0,0,0,1
GOTO/ 20,0,0,0,1,0
GOTO/ 30,0,0,0,1,0
No special sequences
G1 X10 A0 C0
G1 X20 A90
G1 X30
Special sequences/macro
G1 X10
Macro or Sequence
G1 X20
G1 X30
This feature can also be activated with the APT command MODE/CLAMP,ON. The command
MODE/CLAMP,OFF deactivates it.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0
(normal angle output), 1 (sequence) or 2 (macro).
e.g. OLD = CF_ SETPARINT(’’ROTAXIS_CLAMP_AUTO’’,1)
Page 158
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
•
Name of the Rotary Axis clamp macro (STR_ROTAXIS_CLAMP_MACRO):
This defines the macro which is inserted at any tool vector change instead of angle output.
•
Rotary Axis position sequence (BLK_ROTAXIS_CLAMP):
This defines the sequence which is inserted at any tool vector change instead of angle output..
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 159
Chapter 5 - cPost Tab Pages
5.4.6.5.9
OPTION 5AXIS EULER (MULTAX MACHINES)
•
Minimum value of 1st Euler axis (R8_EULER_1ST_AXIS_MIN):
This parameter defines the minimum value of the Euler angle of the 1st axis.
Attention:
This parameter can be modified with the macro function CF_SETPARREAL.
e.g. OLD = CF_ SETPARREAL(’’EULER_1ST_AXIS_MIN’’,-90.0)
•
Maximum value of 1st Euler axis (R8_EULER_1ST_AXIS_MAX):
This parameter defines the maximum value of the Euler angle of the 1st axis.
Attention:
This parameter can be modified with the macro function CF_SETPARREAL.
e.g. OLD = CF_ SETPARREAL(’’EULER_1ST_AXIS_MAX’’,-90.0)
•
Minimum value of 2nd Euler axis (R8_EULER_2ND_AXIS_MIN):
This parameter defines the minimum value of the Euler angle of the 2nd axis.
Attention:
This parameter can be modified with the macro function CF_SETPARREAL.
e.g. OLD = CF_ SETPARREAL(’’EULER_2ND_AXIS_MIN’’,-90.0)
•
Maximum value of 2nd Euler axis (R8_EULER_2ND_AXIS_MAX):
This parameter defines the maximum value of the Euler angle of the 2nd axis.
Attention:
This parameter can be modified with the macro function CF_SETPARREAL.
e.g. OLD = CF_ SETPARREAL(’’EULER_2ND_AXIS_MAX’’,-90.0)
•
Minimum value of 3rd Euler axis (R8_EULER_3RD_AXIS_MIN):
This parameter defines the minimum value of the Euler angle of the 3rd axis.
Attention:
This parameter can be modified with the macro function CF_SETPARREAL.
e.g. OLD = CF_ SETPARREAL(’’EULER_3RD_AXIS_MIN’’,-90.0)
•
Maximum value of 3rd Euler axis (R8_EULER_3RD_AXIS_MAX):
This parameter defines the maximum value of the Euler angle of the 3rd axis.
Attention:
This parameter can be modified with the macro function CF_SETPARREAL.
e.g. OLD = CF_ SETPARREAL(’’EULER_3RD_AXIS_MAX’’,-90.0)
Page 160
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
•
1st Euler axis positive direction is (I4_EULER_1ST_AXIS_POS_DIR):
This parameter defines the positive direction of the 1st Euler axis. If CLW (0) is selected, this direction is chosen as positive direction.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0
(CLW) or 1 (CCLW). e.g. OLD = CF_ SETPARINT(’’EULER_1ST_AXIS_POS_DIR’’,1)
•
2nd Euler axis positive direction is (I4_EULER_2ND_AXIS_POS_DIR):
This parameter defines the positive direction of the 2nd Euler axis. If CLW (0) is selected, this direction is chosen as positive direction.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0
(CLW) or 1 (CCLW). e.g. OLD = CF_ SETPARINT(’’EULER_2ND_AXIS_POS_DIR’’,1)
•
3rd Euler axis positive direction is (I4_EULER_3RD_AXIS_POS_DIR):
This parameter defines the positive direction of the 3rd Euler axis. If CLW (0) is selected, this direction is chosen as positive direction.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0
(CLW) or 1 (CCLW). e.g. OLD = CF_ SETPARINT(’’EULER_3RD_AXIS_POS_DIR’’,1)
•
Definition of the Euler angles (I4_EULER_AXIS_FIXED):
This parameter defines if the the frame of the Euler angles is a fixed one like on Heidenhain controllers or a rotating one like on Siemens controllers. Static means, that all Euler axis are independent
from each other. Rotating means that a rotation of the first changes the position of the second and
third.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0
(rotating frame) or 1 (static frame). e.g. OLD = CF_ SETPARINT(’’EULER_AXIS_FIXED’’,1)
•
Order of the Euler axis (STR_EULER_AXIS_ORDER):
This parameter defines the Euler axis and the order of these. ZXZ means the 1st Euler rotation is
round Z, the 2nd round X and the last round Z. This is for example the order for a SIEMENS 840D
controller if RPY angle output is expected.
Some examples for the Euler definition:
Heidenhain:
STR_EULER_AXIS_ORDER = XYZ and I4_EULER_AXIS_FIXED = 1
Siemens RPY:
STR_EULER_AXIS_ORDER = ZXZ and I4_EULER_AXIS_FIXED = 0
Siemens Euler angles:
STR_EULER_AXIS_ORDER = ZYX and I4_EULER_AXIS_FIXED = 0
Attention:
This parameter can be modified with the macro function CF_SetParStr$. Possible values are “XYZ”,
“XYX”, “XZY”, “XZX”, “YZX”, “YZY”, “YXZ”, “YXY”, “ZXY”, “ZXZ”, “ZYX”, “ZYZ” or “NONE”.
e.g. OLD$ = CF_ SETPARSTR$(''EULER_AXIS_ORDER'',''ZXZ'')
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 161
Chapter 5 - cPost Tab Pages
5.4.7
MOTIONS - WIRE MACHINES ONLY
5.4.7.1
COMMANDS
•
Rapid command:
• Address parameter
• Rapid command (ADR_RAPID):
This parameter defines the command for rapid movement. Generated by the APT-Words
RAPID
GOTO/x, y, z
•
Rapid motion command without thread (2nd part):
• Address parameter
• Rapid command (2nd part) (ADR_WIRE_RAP_MOTION_WO_THREAD):
This is the special part for RAPID motions without thread. For example: The Agie 123 needs
here a G40 M22.
•
Rapid motion command with thread (2nd part):
• Address parameter
• Rapid command (2nd part) (ADR_WIRE_RAP_MOTION_W_THREAD):
This is the special part for RAPID motions with thread. For example: The Agie 123 needs
here a G40 M21.
•
Linear interpolation command:
• Address parameter
• Linear interpolation command (ADR_LINEAR_INTERPOLATION):
This parameter defines the command for linear movement. It is generated by the APT-Word:
GOTO/x, y, z
Page 162
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
•
Circle command right:
• Address parameter
• Circle command right (ADR_CIRCULAR_INTERPOLATION_RIGHT):
This parameter defines the command for a motion statement along circular path clockwise.
•
Circle command left:
• Address parameter
• Circle command left (ADR_CIRCULAR_INTERPOLATION_LEFT):
This parameter defines the command for a motion statement along circular path counter
clockwise for milling
5.4.7.2
•
SEQUENCES
Motion sequence 2X:
• Address parameter block
• free text (BLK_WIRE_2X_MOTION):
This sequence defines the output of the MOTION command with only the lower contour. This
sequence is used to support more complex syntax forms. If defined there is no output of simple motion commands or coordinates.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 163
Chapter 5 - cPost Tab Pages
•
Motion sequence 4X:
• Address parameter block
• free text (BLK_WIRE_4X_MOTION):
This sequence defines the output of the MOTION command with lower and upper contour.
This sequence is used to support more complex syntax forms. If defined there is no output of
simple motion commands or coordinates.
5.4.7.3
COORDINATES
5.4.7.3.1
GENERAL
•
Address of 1st axis:
• Address parameter
• Address of 1st axis (ADR_1ST_COORDINATE):
This parameter defines the address and format of motion coordinate for first axis for milling.
Available pool variable:
C_AXIS_X_ADR this parameter value
• Format
•
Address of 2nd axis:
• Address parameter
• Address of 2nd axis (ADR_2ND_COORDINATE):
This parameter defines the address and format of motion coordinate for the second axis for
milling.
Available pool variable:
C_AXIS_Y_ADR this parameter value
• Format
Page 164
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
•
Address of 3rd axis:
• Address parameter
• Address of 3rd axis (ADR_3RD_COORDINATE):
This parameter defines the address and format of motion coordinate for the third axis for milling.
Available pool variable:
C_AXIS_Z_ADR this parameter value
• Format
•
Address of 1st axis (incr):
• Address parameter
• Address of 1st axis (incr) (ADR_1ST_COORDINATE_INCR):
This parameter defines the address and format of incremental motion coordinate for the first
axis for milling. It is necessary to define this parameter if the controller has no incremental on
or off command. The default values have the same address characters as absolute programming.
Available pool variable:
C_AXIS_X_ADR this parameter value
• Format
•
Address of 2nd axis (incr):
• Address parameter
• Address of 2nd axis (incr) (ADR_2ND_COORDINATE_INCR):
This parameter defines the address and format of incremental motion coordinate for the second axis for milling. It is necessary to define this parameter if the controller has no incremental on or off command. The default values have the same address characters as absolute
programming.
Available pool variable:
C_AXIS_Y_ADR this parameter value
• Format
•
Address of 3rd axis (incr):
• Address parameter
• Address of 3rd axis (incr) (ADR_3RD_COORDINATE_INCR):
This parameter defines the address and format of incremental motion coordinate for the third
axis for milling. It is necessary to define this parameter if the controller has no incremental on
or off command. The default values have the same address characters as absolute programming.
Available pool variable:
C_AXIS_Z_ADR this parameter value
• Format
•
Address of 1st axis circle center:
• Address parameter
• Address of 1st axis circle center (ADR_1ST_CIRCLE_CENTER_COORDINATE):
This parameter defines the coordinate address for the center of circles for milling.
• Format
•
Address of 2nd axis circle center:
• Address parameter
• Address of 2nd axis circle center (ADR_2ND_CIRCLE_CENTER_COORDINATE):
This parameter defines the coordinate address for the center of circles for milling.
• Format
•
Address of 3rd axis circle center:
• Address parameter
• Address of 3rd axis circle center (ADR_3RD_CIRCLE_CENTER_COORDINATE):
This parameter defines the coordinate address for the center of circles for milling.
• Format
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 165
Chapter 5 - cPost Tab Pages
5.4.7.3.2
ANGLE OUTPUT (MULTAX)
•
Address of angle perpendicular to motion direction (Q):
• Address parameter
• Address of 1st rotary axis (ADR_1ST_ROTARY_AXIS):
This parameter defines the address and format of motion coordinate of the first rotation axis.
Available pool variable:
C_AXIS_A_ADR this parameter value
• Format
•
Address of angle in motion direction (R):
• Address parameter
• Address of 2nd rotary axis (ADR_2ND_ROTARY_AXIS):
This parameter defines the address and format of motion coordinate of the second rotation
axis. Available pool variable:
C_AXIS_B_ADR this parameter value
• Format
5.4.7.3.3
•
LINEAR OUTPUT (MULTAX)
Address of upper 1st linear axis (X):
• Address parameter
• Address of upper 1st linear axis (ADR_WIRE_4X_UPPER_X):
Page 166
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
•
There are different descriptions of the upper contour on a wire machine: The Agie 100 controllers use angle coordinates, the Charmilles use different linear coordinates (XY for lower
contour, UV for upper) and the Agievision has the complete motion commands for upper and
lower in one record. If you need an output like Charmilles (G1 X Y U V), you must define here
the U address
Format
•
Address of upper 2nd linear axis (Y):
• Address parameter
• Address of upper 1st linear axis (ADR_WIRE_4X_UPPER_Y):
There are different descriptions of the upper contour on a wire machine: The Agie 100 controllers use angle coordinates, the Charmilles use different linear coordinates (XY for lower
contour, UV for upper) and the Agievision has the complete motion commands for upper and
lower in one record. If you need an output like Charmilles (G1 X Y U V), you must define here
the V address
• Format
•
Address of upper 3rd linear axis (Z):
• Address parameter
• Address of upper 1st linear axis (ADR_WIRE_4X_UPPER_Z):
There are different descriptions of the upper contour on a wire machine: The Agie 100 controllers use angle coordinates, the Charmilles use different linear coordinates (XY for lower
contour, UV for upper) and the Agievision has the complete motion commands for upper and
lower in one record. If you need an output like Charmilles (G1 X Y U V), you mustn't define
here any address
• Format
5.4.7.3.4
OPTIONS
•
Skip FROM command (I4_SKIP_FROM):
This parameter defines if the FROM command is skipped or not. If selected, the FROM command is
suppressed.
Attention: This parameter cannot be modified with the macro function CF_SETPARINT.
•
Suppress 1st GOTO (I4_SUPRESS_FIRST_GOTO):
This parameter defines if the first GOTO command will be suppressed or not. If selected, the first
GOTO command is suppressed.
Attention: This parameter cannot be modified with the macro function CF_SETPARINT.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 167
Chapter 5 - cPost Tab Pages
•
Circle center absolute (I4_CIRCLE_CENTER_ABS):
This parameter defines, if output of circle center coordinates are absolute or relative. If selected the
circle center coordiantes are output absolute. If not, the circle center coordiantes are output relative
to the circle starting point.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0
(relative) or 1 (absolute). e.g. OLD = CF_ SETPARINT(’’CIRCLE_CENTER_ABS’’,1) .
Page 168
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.8
FEEDRATE
5.4.8.1
GENERAL
•
Feed address:
• Address parameter
• Feed address (ADR_FEEDRATE):
This parameter defines the address and format of the actual feed for milling. It is output when
a FEDRAT is programmed.
Available poolvariables:
C_FEED_VALUE actual feed value
C_FEED_UNIT actual feed unit (MMPM, MMPR, IPM, IPR)
C_FEED_UNIT_COM acutal feed unit command (for example G94, G93)
• Format
•
Feed mmpm command:
• Address parameter
• Feed mmpm command (ADR_FEEDRAT_MMPM):
This parameter defines the command of the feed unit per minute for milling. It is output when
a FEDRAT is programmed.
Available poolvariables:
C_FEED_VALUE actual feed value
C_FEED_UNIT actual feed unit (MMPM, IPM)
C_FEED_UNIT_COM acutal feed unit command (this command)
• Format
•
Feed mmpr command:
• Address parameter
• Feed mmpr command (ADR_FEEDRAT_MMPR):
This parameter defines the command of the feed unit per revolution for milling. It is output
when a FEDRAT is programmed.
Available poolvariables:
C_FEED_VALUE actual feed value
C_FEED_UNIT actual feed unit (MMPR, IPR)
C_FEED_UNIT_COM acutal feed unit command (this command)
• Format
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 169
Chapter 5 - cPost Tab Pages
•
Feed factor mmpm (R8_FEEDRAT_FACTOR_TIME):
This parameter defines the conversion factor from APT feed unit to machine specific feed unit. It is
necessary if the APT and controller feed units differ. e.g. APT in MMPM ---> controller in MPM leads
to a factor: 0.001
•
Feed factor mmpr (R8_FEEDRAT_FACTOR_UNIT):
This parameter defines the conversion factor from APT feed unit to machine specific feed unit. It is
necessary if the APT and controller feed units differ. e.g. APT in MMPR ---> controller in MPR leads
to a factor: 0.001
Page 170
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.8.2
5AXIS
•
Multax feed handling (I4_5X_FEED_HANDLING):
This parameter defines the treatment of feedrate values in multax mode. cPost offers the following
possibilities:
• Feedrate value will not be changed during a rotation.
• Rotary movements will be calculated together with movements of linear axis. The feed value
is recalculated in dependence of the rotations.
• Output of the inverse time instead of the feedrate (always or only on changes of angles).
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0 (no
modification), 1 (recalculation), 2 (inverse time always) or 3 (inverse time if angle changes).
e.g. OLD = CF_ SETPARINT(''5X_FEED_HANDLING'',1)
•
Feed inverse on command:
• Address parameter
• Feed inverse on command (ADR_5X_FEED_INVERS_ON):
The parameter defines the command to switch on the output of inverse feedrate. It is only
necessary if the feed is output as inverse time in MULTAX mode.
•
Feed inverse off command:
• Address parameter
• Feed inverse off command (ADR_5X_FEED_INVERS_OFF):
The parameter defines the command to switch off the output of inverse feedrate. It is only
necessary if the feed is output as inverse time in MULTAX mode.
•
Feed factor inverse (R8_5X_FACTOR_FEED_INV):
This parameter defines the factor for the conversation of inverse feedrate on 5 axis machine tools. It
is used to handle different units of feedrate. Default is 1.0 (unit is second).
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 171
Chapter 5 - cPost Tab Pages
5.4.8.3
LATHE
•
Feed address lathe:
• Address parameter
• Feed address lathe (ADR_FEEDRATE_LATHE):
This parameter defines the address and format of the actual feed for turning. It is output when
a FEDRAT is programmed.
Available poolvariables:
C_FEED_VALUE actual feed value
C_FEED_UNIT actual feed unit (MMPM, MMPR, IPM, IPR)
C_FEED_UNIT_COM acutal feed unit command (for example G94, G93)
• Format
•
Feed mmpm command lathe:
• Address parameter
• Feed mmpm command lathe (ADR_FEEDRAT_MMPM_LATHE):
This parameter defines the command of the feed unit per minute for turning. It is output when
a FEDRAT is programmed.
Available poolvariables:
C_FEED_VALUE actual feed value
C_FEED_UNIT actual feed unit (MMPM, IPM)
C_FEED_UNIT_COM acutal feed unit command (this command)
• Format
•
Feed mmpr command lathe:
• Address parameter
• Feed mmpr command lathe (ADR_FEEDRAT_MMPR_LATHE):
This parameter defines the command of the feed unit per minute for turning. It is output when
a FEDRAT is programmed.
Available poolvariables:
C_FEED_VALUE actual feed value
C_FEED_UNIT actual feed unit (MMPR, IPR)
C_FEED_UNIT_COM acutal feed unit command (this command)
• Format
Page 172
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
•
Feed factor mmpm lathe (R8_FEEDRAT_FACTOR_TIME_LATHE):
This parameter defines the conversion factor from APT feed unit to machine specific feed unit. It is
necessary if the APT and controller feed units differ. e.g. APT in MMPM ---> controller in MPM leads
to a factor: 0.001
•
Feed factor mmpr lathe (R8_FEEDRAT_FACTOR_UNIT_LATHE):
This parameter defines the conversion factor from APT feed unit to machine specific feed unit. It is
necessary if the APT and controller feed units differ. e.g. APT in MMPR ---> controller in MPR leads
to a factor: 0.001
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 173
Chapter 5 - cPost Tab Pages
5.4.8.4
OPTIONS
•
Starting feed unit (I4_START_FEED_UNIT):
This parameter defines the feed rate unit until the first FEDRAT or TOOLNO command.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 1 for
unit/min and 2 for unit/revolution. e.g. OLD = CF_ SETPARINT(’’FEED_UNIT’’,1)
•
Repeat feed (I4_FEED_REPEAT):
This parameter defines the repeatation of the FEDRAT command with each motion command.
If ’’Never’’ is selected no FEDRAT command is repeated.
If ’’At each linear interpolation’’ , each linear motion is output with the feed. The feed is not repeated
at circular movements.
If ’’At each circular interpolation’’ , each circular motion is output with the feed. The feed is not
repeated at linear movements.
If ’’At each linear and circular interpolation’’ , each linear or circular motion is output with the feed.
If ’’Only once after RAPID’’ is selected, the feed is always repeated in the first circular or linear
motion after a RAPID.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0 (do
nothing), 1 (repeat at each linear), 2 (repeat at each circle), 3 (repeat at each motion) or 4 (repeat
only once after RAPID) . e.g. OLD = CF_ SETPARINT(’’FEED_REPEAT’’,1)
•
Trim feedrate in circular motion (I4_ADJUST_FEDRAT_FOR_CIRCLES):
This switch controls the feedrate for the circular motion. Depending whether the CUTCOM command is set left or right for a motion, the way for the tool is longer or shorter. This can mean for a
current feedrate, that the value is too large or too small. You can now control if cPost should
increase the feedrate value for a longer way, or decrease the feedrate for a shorter way. The
adjusted feedrate limit values are taken into account. Also the tool diameter and the radius of the circle tiles into the calculation of the new feedrate.
To consider: If no CUTCOM is defined this switch has no effekt on the output.
Attention:
This parameter cannot be modified with the macro function CF_SETPARINT.
•
Suppress1st FEDRAT (I4_SUPRESS_FIRST_FEED):
This parameter defines if the first FEDRAT command will be suppressed or not. If selected, the first
FEDRAT command is suppressed.
Attention: This parameter cannot be modified with the macro function CF_SETPARINT.
•
Keep feed until next linear motion (I4_KEEP_FEED):
This parameter defines, if the FEDRAT commands are suppressed until the next motion command
like GOTO, GODLTA or INDIRV. If it is selected, the feed is output together with the next non rapid
motion. If it is not selected, the output is immediately.
Attention: This parameter cannot be modified with the macro function CF_SETPARINT.
Page 174
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.9
SPINDLE
5.4.9.1
GENERAL
•
Spindle on CLW command
• Address parameter
• Spindle on CLW command (ADR_SPINDLE_CLOCKWISE):
This parameter defines the command to activate the spindle clockwise. The output results
together with spindle speed and spindle unit. It is output when a SPINDL/.... is programmed.
Available pool variables:
C_SPINDL_SPEED actual spindle speed
C_SPINDL_WAY acutal spindle direction of rotation (CLW)
C_SPINDL_WAY_COM actual spindle direction command (for example M3)
C_SPINDL_UNIT actual spindle unit (RPM,SFM)
C_SPINDL_UNIT_COM actual spindle unit command (for example G96 or G97)
•
Spindle on CCLW command
• Address parameter
• Spindle on CCLW command (ADR_SPINDLE_COUNTER_CLOCKWISE):
This parameter defines the command to activate the spindle counter clockwise. The output
results together with spindle speed and spindle unit. It is output when a SPINDL/.... is programmed.
Available pool variables:
C_SPINDL_SPEED actual spindle speed
C_SPINDL_WAY acutal spindle direction of rotation (CCLW)
C_SPINDL_WAY_COM actual spindle direction command (for example M4)
C_SPINDL_UNIT actual spindle unit (RPM,SFM)
C_SPINDL_UNIT_COM actual spindle unit command (for example G96 or G97)
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 175
Chapter 5 - cPost Tab Pages
•
Spindle off
• Address parameter
• Spindle off (ADR_SPINDLE_STOP):
This parameter defines the command to stop the spindle. It is output when a SPINDL/OFF is
programmed.
•
Spindle speed address
• Address parameter
• Spindle speed address (ADR_SPINDLE_SPEED):
This parameter defines the address and format of the spindle speed. The output results
together with spindle direction and spindle unit. It is output when a SPINDL/.... is programmed.
Available pool variables:
C_SPINDL_SPEED actual spindle speed
C_SPINDL_WAY acutal spindle direction of rotation (CLW, CCLW)
C_SPINDL_WAY_COM actual spindle direction command (for example M3 or M4)
C_SPINDL_UNIT actual spindle unit (RPM,SFM)
C_SPINDL_UNIT_COM actual spindle unit command (for example G96 or G97)
• Format
•
Constant cutting speed on command:
• Address parameter
• Constant cutting speed on command (ADR_CONST_CUTTING_SPEED_ON):
This parameter defines the command for machining with constant cutting speed.
--> the spindle speed changes with different diameter.
ATTENTION! Spindle speed limitation is very important!!!
It is output when a SPINDL/....,SFM,... Is programmed
•
Constant cutting speed off command:
• Address parameter
• Constant cutting speed off command (ADR_CONST_CUTTING_SPEED_OFF):
This parameter defines the command for the deselection of machining with constant cutting
speed. It is output when a SPINDL/...,RPM is programmed.
•
Constant cutting speed address:
• Address parameter
• Constant cutting speed address (ADR_CONST_CUTTING_SPEED):
This parameter defines the address and format of the cutting speed value. It is necessary if
the controller has different addresses for constant spindl speed and constant cutting speed. It
is output when a SPINDL/...SFM,... is programmed.
Available pool variables:
C_SPINDL_SPEED actual spindle speed
C_SPINDL_WAY acutal spindle direction of rotation (CLW, CCLW)
C_SPINDL_WAY_COM actual spindle direction command (for example M3 or M4)
C_SPINDL_UNIT actual spindle unit (SFM)
C_SPINDL_UNIT_COM actual spindle unit command (for example G96)
• Format
•
Spindle speed limit command
• Address parameter
• Spindle speed limit command (ADR_SPINDLE_SPEED_LIMIT):
This parameter defines the command to define a maimum spindle speed. It is output when a
SPINDL/...., MAXRPM is programmed.
• Format
•
Spindle speed limit address
• Address parameter
• Spindle speed limit address (ADR_SPINDLE_SPEED_MAX):
This parameter defines the address and format of the maximum spindle speed. It is necessary if this address differs from the normal spindle speed address. It is output if a SPINDL/
...,MAXRPM is programmed.
• Format
Page 176
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
•
Spindle range command
• Address parameter block
• free text (BLK_SPINDLE_RANGE_CMD_MILL):
This block defines the commands for different spindle speed ranges. The different comands
have to be separated by ';'. M45;M46;M47 defines the command for the first spindle range is
M45. The command for the second is M46, and so on. It is output if a SPINDL/RANGE is programmed.
Available pool variable:
C_SPINDL_RANGE_COM actual spindle range command
•
Spindle speed factor (R8_SPINDLE_FACTOR):
This parameter defines the factor for the conversion of the APT spindle speed into the machine
spindle speed. It is necessary if the APT and the controller units differ.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 177
Chapter 5 - cPost Tab Pages
5.4.9.2
LATHE
•
Spindle on CLW command lathe
• Address parameter
• Spindle on CLW command lathe (ADR_SPINDLE_CLOCKWISE_LATHE):
This parameter defines the command to activate the spindle clockwise. The output results
together with spindle speed and spindle unit. It is output when a SPINDL/.... is programmed.
Available pool variables:
C_SPINDL_SPEED actual spindle speed
C_SPINDL_WAY acutal spindle direction of rotation (CLW)
C_SPINDL_WAY_COM actual spindle direction command (for example M3)
C_SPINDL_UNIT actual spindle unit (RPM,SFM)
C_SPINDL_UNIT_COM actual spindle unit command (for example G96 or G97)
•
Spindle on CCLW command lathe
• Address parameter
• Spindle on CCLW command lathe (ADR_SPINDLE_COUNTER_CLOCKWISE_LATHE):
This parameter defines the command to activate the spindle counter clockwise. The output
results together with spindle speed and spindle unit. It is output when a SPINDL/.... is programmed.
Available pool variables:
C_SPINDL_SPEED actual spindle speed
C_SPINDL_WAY acutal spindle direction of rotation (CCLW)
C_SPINDL_WAY_COM actual spindle direction command (for example M4)
C_SPINDL_UNIT actual spindle unit (RPM,SFM)
C_SPINDL_UNIT_COM actual spindle unit command (for example G96 or G97)
Page 178
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
•
Spindle off lathe
• Address parameter
• Spindle off lathe (ADR_SPINDLE_STOP_LATHE):
This parameter defines the command to stop the spindle. It is output when a SPINDL/OFF is
programmed.
•
Spindle speed address lathe
• Address parameter
• Spindle speed address lathe (ADR_SPINDLE_SPEED_LATHE):
This parameter defines the address and format of the spindle speed. The output results
together with spindle direction and spindle unit. It is output when a SPINDL/.... is programmed.
Available pool variables:
C_SPINDL_SPEED actual spindle speed
C_SPINDL_WAY acutal spindle direction of rotation (CLW, CCLW)
C_SPINDL_WAY_COM actual spindle direction command (for example M3 or M4)
C_SPINDL_UNIT actual spindle unit (RPM,SFM)
C_SPINDL_UNIT_COM actual spindle unit command (for example G96 or G97)
• Format
•
Spindle speed factor lathe (R8_SPINDLE_FACTOR_LATHE):
This parameter defines the factor for the conversion of the APT spindle speed into the machine
spindle speed. It is necessary if the APT and the controller units differ.
•
Spindle range command lathe
• Address parameter block
• free text (BLK_SPINDLE_RANGE_CMD_LATHE):
This block defines the commands for different spindle speed ranges. The different comands
have to be separated by ';'. M45;M46;M47 defines the command for the first spindle range is
M45. The command for the second is M46, and so on. It is output if a SPINDL/RANGE is programmed.
Available pool variable:
C_SPINDL_RANGE_COM actual spindle range command
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 179
Chapter 5 - cPost Tab Pages
5.4.9.3
•
OPTIONS
Starting spindle unit (I4_START_SPINDL_UNIT):
This parameter defines if the spindle speed or the cutting speed is constant until the first SPINDL or
TOOLNO command.
Page 180
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.10
COOLANT
5.4.10.1
NORMAL
•
Coolant on command
• Address parameter
• Coolant on command (ADR_COOLANT_ON):
This parameter defines the command to acitvate the cooling. It is output when a COOLNT/ON
is programmed.
Available pool variables:
C_COOLNT_COM actual coolant command
C_COOLNT_TYPE actual coolant type (DEFAULT)
C_COOLNT_STAT actual coolant state (ON)
•
Coolant off command
• Address parameter
• Coolant off command (ADR_COOLANT_OFF):
This parameter defines the command to deacitvate the cooling. It is output when a COOLNT/
OFF is programmed.
Available pool variables:
C_COOLNT_COM actual coolant command
C_COOLNT_TYPE actual coolant type (DEFAULT)
C_COOLNT_STAT actual coolant state (OFF)
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 181
Chapter 5 - cPost Tab Pages
5.4.10.2
FLOOD
•
Coolant flood on command
• Address parameter
• Coolant flood on command (ADR_FLOOD_ON):
This parameter defines the command to acitvate the submersion cooling. It is output when a
COOLNT/FLOOD,ON is programmed.
Available pool variables:
C_COOLNT_COM actual coolant command
C_COOLNT_TYPE actual coolant type (FLOOD)
C_COOLNT_STAT actual coolant state (ON)
•
Coolant flood off command
• Address parameter
• Coolant flood off command (ADR_FLOOD_OFF):
This parameter defines the command to deacitvate the submersion cooling. It is output when
a COOLNT/FLOOD,OFF is programmed.
Available pool variables:
C_COOLNT_COM actual coolant command
C_COOLNT_TYPE actual coolant type (FLOOD)
C_COOLNT_STAT actual coolant state (OFF)
Page 182
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.10.3
MIST
•
Coolant mist on command
• Address parameter
• Coolant mist on command (ADR_MIST_ON):
This parameter defines the command to acitvate the combined cooling. It is output when a
COOLNT/MIST,ON is programmed.
Available pool variables:
C_COOLNT_COM actual coolant command
C_COOLNT_TYPE actual coolant type (MIST)
C_COOLNT_STAT actual coolant state (ON)
•
Coolant mist off command
• Address parameter
• Coolant mist off command (ADR_MIST_OFF):
This parameter defines the command to deacitvate the combined cooling. It is output when a
COOLNT/MIST,OFF is programmed.
Available pool variables:
C_COOLNT_COM actual coolant command
C_COOLNT_TYPE actual coolant type (MIST)
C_COOLNT_STAT actual coolant state (OFF)
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 183
Chapter 5 - cPost Tab Pages
5.4.10.4
TAPKUL
•
Coolant tapkul on command
• Address parameter
• Coolant tapkul on command (ADR_TAPKUL_ON):
This parameter defines the command to acitvate the thread cooling. It is output when a
COOLNT/TAPKUL,ON is programmed.
Available pool variables:
C_COOLNT_COM actual coolant command
C_COOLNT_TYPE actual coolant type (TAPKUL)
C_COOLNT_STAT actual coolant state (ON)
•
Coolant tapkul off command
• Address parameter
• Coolant tapkul off command (ADR_TAPKUL_OFF):
This parameter defines the command to deacitvate the thread cooling. It is output when a
COOLNT/TAPKUL,OFF is programmed.
Available pool variables:
C_COOLNT_COM actual coolant command
C_COOLNT_TYPE actual coolant type (TAPKUL)
C_COOLNT_STAT actual coolant state (OFF)
Page 184
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.10.5
THRU
•
Coolant thru on command
• Address parameter
• Coolant thru on command (ADR_THRU_ON):
This parameter defines the command to acitvate the tool interior cooling. It is output when a
COOLNT/THRU,ON is programmed.
Available pool variables:
C_COOLNT_COM actual coolant command
C_COOLNT_TYPE actual coolant type (THRU)
C_COOLNT_STAT actual coolant state (ON)
•
Coolant thru off command
• Address parameter
• Coolant thru off command (ADR_THRU_OFF):
This parameter defines the command to deacitvate the tool interior cooling. It is output when a
COOLNT/THRU,OFF is programmed.
Available pool variables:
C_COOLNT_COM actual coolant command
C_COOLNT_TYPE actual coolant type (THRU)
C_COOLNT_STAT actual coolant state (OFF)
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 185
Chapter 5 - cPost Tab Pages
5.4.11
TOOL CHANGE
5.4.11.1
SEQUENCES (MILLING MACHINES)
•
Tool change sequence
• Address parameter block
• free text (BLK_TOOL_CHANGE):
This sequence defines the tool change sequence. It is output when a LOADTL/n1, n2, n3 is
programmed.
Available pool variables:
C_TL_CUR_TLID
actual tool number
C_TL_PREV_TLID
previous tool number
C_TLNO_TL_NUMBER_C
actual tool number (n1)
C_TL_LEN_COMP_REG
tool length compenstation register (n2)
C_TL_RAD_COMP_REG
tool radius compensation register (n3)
Page 186
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.11.2
LATHE (TURNING MACHINES)
•
Change from turning to milling
• Address parameter block
• free text (BLK_TURN_TO_MILL):
This block is processed instead of the normal tool change block if the processing type
changes from turning to milling during the tool change.
The first TOOLNO parameter of the involved tools is checked for a change of processing
type.
•
Change from milling to turning
• Address parameter block
• free text (BLK_MILL_TO_TURN):
This block is processed instead of the normal tool change block if the processing type
changes from milling to turning during the tool change.
The first TOOLNO parameter of the involved tools is checked for a change of processing
type.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 187
Chapter 5 - cPost Tab Pages
5.4.11.3
SELECTION
•
Automatic preselection (I4_SELCTOOL_AUTOMATIC):
This parameter defines if the postprocessor shall do an automatic tool preselection. If selected,
cPost looks for the next LOADTL and creates a SELCTL command automatically.
Attention: This parameter must not be modified with the macro function CF_SETPARINT.
•
Select 1st after last tool (I4_TL_SEL_AFTER_LAST):
This switch is only active when the automatic tool preselection is activated. It defines wether the first
tool is preselected at the last tool change or the preselection is suppressed for this tool change.
Attention: This parameter must not be modified with the macro function CF_SETPARINT.
•
Position of Select sequence (I4_POS_SEL_BLOCK):
This parameter defines if the tool selection block will be output at the call position of SELCTL or at
the next positioning travel.
Attention: This parameter must not be modified with the macro function CF_SETPARINT.
•
SELCTL sequence
• Address parameter block
• free text (BLK_SELECT_TOOL):
This sequence defines the tool preselection. If the preselection is manually, it is only output
when a SELCTL is programmed. If the preselection is automaticly, it is output when a
LOADTL is programmed.
Available pool variables:
C_TL_SELECTED_TLID tool id of preselected tool
Page 188
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.11.4
OPTIONS
•
Delete last RAPID before LOADTL (I4_LOADTL_RAPID_HANDLING):
This switch defines if the last RAPID command before a tool change (LOADTL) is supressed or not.
The RAPID command must be located immediately before the LOADTL command.
Attention: This parameter must not can be modified with the macro function CF_SETPARINT.
•
Special LOADTL handling (I4_LOADTL_HANDLING):
This switch defines how the LOADTL command is managed.
If the switch is active, cPost will read forward until the next motion. All SPINDL, FEDRAT and
COOLNT data will replace the TOOLNO data and is available in the variable pool for the output of
the tool change sequence. There is no output of these values except in the sequence.
If the switch is not active, cPost doesn’t read forward to collect these data. Only the TOOLNO values
are available for the output of the tool change sequence.
For example:
Switch is active:
TOOLNO/1,MILL,......
LOADTL/1
FEDRAT/100,MMPM
COOLNT/ON
SPINDL/100, RPM
GOTO/ 10,20,30
no output, only available in the variable pool
no output, only available in the variable pool
no output, only available in the variable pool
cPost reads forward until the GOTO command. The SPINDL, FEDRAT, COOLNT Data from the
TOOLNO is replaced by the programmed values. These command have no output except if they are
defined in the tool change sequence.
Attention: This parameter must not can be modified with the macro function CF_SETPARINT.
•
Default radius corr. Register (I4_TL_CORR_DEFAULT):
This parameter defines whether missing indexes are adopted from the LOADTL command. If the
switch is set, if index numbers are missing the tool number is adopted as such or, if only the length
correction index number is given, it is also adopted for the radius correction index.
For example:
LOADTL/1 is programmed. If the switch is set, the radius and length compensation register are set
to 1. If it is not set, these register aren’t set.
•
Switch off modality check of spindle (I4_LOADTL_SPINDL_MOD):
This parameter defines if the modality of the SPINDL command is switched off after a tool change.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0
(modality on) or 1 (modality off). e.g. OLD = CF_ SETPARINT(’’LOADTL_SPINDL_MOD’’,1)
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 189
Chapter 5 - cPost Tab Pages
•
Switch off modality check of coolnt (I4_LOADTL_COOLNT_MOD):
This parameter defines if the modality of the COOLNT command is switched off after a tool change.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0
(modality on) or 1 (modality off). e.g. OLD = CF_ SETPARINT(’’LOADTL_COOLNT_MOD’’,1)
•
Switch off modality check of feedrate (I4_LOADTL_FEDRAT_MOD):
This parameter defines if the modality of the FEDRAT command is switched off after a tool change.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0
(modality on) or 1 (modality off). e.g. OLD = CF_ SETPARINT(’’LOADTL_FEDRAT_MOD’’,1)
Page 190
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.11.5
LIMITS
•
Insert macro after defined time (I4_MACRO_TIME_CHECK):
cPost offers the possibility to insert a macro after a certain time. There is the following selection:
• No insert
• Insert the macro after a certain cutting time per tool
• Insert the macro after a certain total time per tool
• Insert the macro after a certain cutting time for all tools
• Insert the macro after a certain total time for all tools
If the switch is active, cPost calculates the time and checks if the limit is reached. If the limit is
reached, cPost inserts the defined macro immediately or outputs a warning immediately and inserts
the macro call before the next RAPID motion.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are
• 0 - do nothing
• 1 - cutting per tool)
• 2 - total per tool
• 3 - cutting all tools
• 4 - total all tools
e.g. OLD = CF_ SETPARINT(''MACRO_TIME_CHECK'',1) .
•
Choose insert position of macro (I4_MACRO_TIME_CHECK_POS):
This parameter defines the position of the inserted macro. The possible values are immediately or
before the next RAPID. If ’’Next RAPID’’ is selected, cPost outputs immediately only a warning that
the limit is reached.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0
(immediately) or 1 (next RAPID). e.g. OLD = CF_ SETPARINT(’’MACRO_TIME_CHECK_POS’’,1)
•
Name of the macro (STR_MACRO_TIME_CHECK):
This parameter defines the name of the macro which is inserted after a defined time.
•
Time limit (R8_MACRO_TIME_CHECK):
After this time limit is reached the macro is insert.
•
Insert macro after defined way (I4_MACRO_WAY_CHECK):
cPost offers the possibility to insert a macro after a certain way. There is the following selection:
• No insert
• Insert the macro after a certain cutting way per tool
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 191
Chapter 5 - cPost Tab Pages
• Insert the macro after a certain total way per tool
• Insert the macro after a certain cutting way for all tools
• Insert the macro after a certain total way for all tools
If the switch is active, cPost calculates the way and checks if the limit is reached. If the limit is
reached, cPost inserts the defined macro immediately or outputs a warning immediately and inserts
the macro call before the next RAPID motion.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0 (do
nothing), 1 (cutting per tool), 2 (total per tool), 3 (cutting all tools) or 4 (total all tools).
e.g. OLD = CF_ SETPARINT(''MACRO_WAY_CHECK'',1)
•
Choose insert position of macro (I4_MACRO_WAY_CHECK_POS):
This parameter defines the position of the inserted macro. The possible values are immediately or
before the next RAPID. If ’’Next RAPID’’ is selected, cPost outputs immediately only a warning that
the limit is reached.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0
(immediately) or 1 (next RAPID). e.g. OLD = CF_ SETPARINT(’’MACRO_WAY_CHECK_POS’’,1)
•
Name of the macro (STR_MACRO_WAY_CHECK):
This parameter defines the name of the macro which is inserted after a defined way.
•
Time limit (R8_MACRO_WAY_CHECK):
After this way limit is reached the macro is insert.
Page 192
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.12
TOOL COMPENSATION
5.4.12.1
RADIUS
5.4.12.1.1 GENERAL
•
radius corr. register address
• Address parameter
• radius corr. register address (ADR_RADIUS_CORRECTION):
This parameter defines the address and the format of the radius compensation register.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 193
Chapter 5 - cPost Tab Pages
5.4.12.1.2 RIGHT
•
radius correction cmd. right on
• Address parameter
• radius correction cmd. right on (ADR_RADIUS_CORRECTION_RIGHT_ON):
This parameter defines the command for radius compensation right. It is output when a CUTCOM/RIGHT is programmed.
•
radius correction cmd. right on (2nd)
• Address parameter
• radius correction cmd. right on (2nd) (ADR_RADIUS_CORRECTION_RIGHT2):
This parameter defines the optional second part of radius correction command.
This command will be generated before or with the 2nd contour element in dependence of its
priority.
•
radius correction cmd. right off
• Address parameter
• radius correction cmd. right off (ADR_RADIUS_CORRECTION_RIGHT_OFF):
This parameter defines the command to deactivate the radius compensation. It is output
when a CUTCOM/OFF after a CUTCOM/RIGHT is programmed.
Page 194
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.12.1.3 LEFT
•
radius correction cmd. left on
• Address parameter
• radius correction cmd. left on (ADR_RADIUS_CORRECTION_LEFT_ON):
This parameter defines the command for radius compensation right. It is output when a CUTCOM/LEFT is programmed.
•
radius correction cmd. left on (2nd)
• Address parameter
• radius correction cmd. left on (2nd) (ADR_RADIUS_CORRECTION_LEFT2):
This parameter defines the optional second part of radius correction command.
This command will be generated before or with the 2nd contour element in dependence of its
priority.
•
radius correction cmd. left off
• Address parameter
• radius correction cmd. left off (ADR_RADIUS_CORRECTION_LEFT_OFF):
This parameter defines the command to deactivate the radius compensation left . It is output
when a CUTCOM/OFF after a CUTCOM/LEFT is programmed.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 195
Chapter 5 - cPost Tab Pages
5.4.12.1.4 OPTIONS
•
Output of radius register (I4_RAD_CORR_REG_POS):
The parameter defines if the register is output with the first or the second part of the CUTCOM/ON
command. If this switch is set, the radius correction register will be generated with the first part of
the radius correction command. Otherwise it determines an output of the radius correction register
with the second part of the radius correction command.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 1
(1st) or 2 (2nd). e.g. OLD = CF_ SETPARINT(’’RAD_CORR_REG_POS’’,1)
Page 196
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.12.2
LENGTH
5.4.12.2.1 X_AXIS
•
correction in pos X command
• Address parameter
• correction in pos X command (ADR_TOOL_COMP_PARALLEL_X_AXIS_POS):
The command and the address for length compensation index entry is given separately for
each plane (e.g.: G43 H).
The length correction index number is taken from the last LOADTL or CUTCOM command.
It is output when a CUTCOM/PARX, POS is programmed.
•
correction in neg X command
• Address parameter
• correction in neg X command (ADR_TOOL_COMP_PARALLEL_X_AXIS_NEG):
The command and the address for length compensation index entry is given separately for
each plane (e.g.: G43 H).
The length correction index number is taken from the last LOADTL or CUTCOM command.
It is output when a CUTCOM/PARX, NEG is programmed.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 197
Chapter 5 - cPost Tab Pages
5.4.12.2.2 Y_AXIS
•
correction in pos Y command
• Address parameter
• correction in pos Y command (ADR_TOOL_COMP_PARALLEL_Y_AXIS_POS):
The command and the address for length compensation index entry is given separately for
each plane (e.g.: G43 H).
The length correction index number is taken from the last LOADTL or CUTCOM command.
It is output when a CUTCOM/PARY, POS is programmed.
•
correction in neg Y command
• Address parameter
• correction in neg Y command (ADR_TOOL_COMP_PARALLEL_Y_AXIS_NEG):
The command and the address for length compensation index entry is given separately for
each plane (e.g.: G43 H).
The length correction index number is taken from the last LOADTL or CUTCOM command.
It is output when a CUTCOM/PARY, NEG is programmed.
Page 198
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.12.2.3 Z_AXIS
•
correction in pos Z command
• Address parameter
• correction in pos Z command (ADR_TOOL_COMP_PARALLEL_Z_AXIS_POS):
The command and the address for length compensation index entry is given separately for
each plane (e.g.: G43 H).
The length correction index number is taken from the last LOADTL or CUTCOM command.
It is output when a CUTCOM/PARZ, NEG is programmed.
•
correction in neg Z command
• Address parameter
• correction in neg Z command (ADR_TOOL_COMP_PARALLEL_Z_AXIS_NEG):
The command and the address for length compensation index entry is given separately for
each plane (e.g.: G43 H).
The length correction index number is taken from the last LOADTL or CUTCOM command.
It is output when a CUTCOM/PARZ, NEG is programmed.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 199
Chapter 5 - cPost Tab Pages
5.4.12.2.4 OPTIONS
•
Output of length register (I4_LGTH_CMP_OUT):
This parameter defines if the length compensation is output once at the first Z traverse or at each Z
traverse. If this switch is set, the length compensation is output for every Z traverse. If it is not set,
the length compensation index will be entered only the first Z traverse.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0
(output at first) or 1 (output at each). e.g. OLD = CF_ SETPARINT(’’LGTH_CMP_OUT’’,1)
•
Add tool length in Z axis (I4_TL_LEN_COMP_CALC):
This parameter defines if the tool length is added to the positioning axis. If this switch is set, the
value of the positioning axis is calculated back by the tool length. The postprocessor takes the tool
length from the CUTTER or TOOLNO statement.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0 (do
nothing) or 1 (add). e.g. OLD = CF_ SETPARINT(’’TL_LEN_COMP_CALC’’,1)
•
Add radius to Z axis (sphere) (I4_CALC_SPHER_RAD):
This parameter defines if the tool radius is added to the positioning axis instead of the tool length for
spherical tools. If this switch is set the tool radius is added to the value of the positioning axis. The
tool radius must be defined in a TOOLNO or CUTTER statement.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0 (do
nothing) or 1 (radius). e.g. OLD = CF_ SETPARINT(’’CALC_SPHER_RAD’’,1)
Page 200
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.12.3
NORMAL TO DRIVE SURFACE
5.4.12.3.1 ADDRESSES
•
X address of the compensation vector normal to the drive surface
• Address parameter
• X address of the compensation vector (ADR_CUTCOM_PQR_VECTOR_X):
This parameter defines the X address of the compensation vector normal to the drive surface.
It is output from CATIA after a CUTCOM/NORMDS command. .
•
Y address of the compensation vector normal to the drive surface
• Address parameter
• X address of the compensation vector (ADR_CUTCOM_PQR_VECTOR_Y):
This parameter defines the Y address of the compensation vector normal to the drive surface.
It is output from CATIA after a CUTCOM/NORMDS command. .
•
Z address of the compensation vector normal to the drive surface
• Address parameter
• X address of the compensation vector (ADR_CUTCOM_PQR_VECTOR_Z):
This parameter defines the Z address of the compensation vector normal to the drive surface.
It is output from CATIA after a CUTCOM/NORMDS command. .
•
Factor of tool vector (R8_CUTCOM_PQR_VECTOR_FACTOR):
This parameter defines the factor for the transformation from APT to ISO. The APT input vector is
multiplied with this factor.
Attention: This parameter can be modified with the macro function CF_SETPARREAL. e.g. OLD =
CF_ SETPARREAL(’’R8_CUTCOM_PQR_VECTOR_FACTOR’’,1000.0)
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 201
Chapter 5 - cPost Tab Pages
5.4.12.3.2 COMMANDS
•
Command to activate the compensation normal to the drive surface
• Address parameter
• X address of the compensation vector (ADR_CUTCOM_NORM_DS_ON):
This parameter defines the activation/deactivation of the compensation mode in a direction
normal to the drive surface. It is output when a CUTCOM/NORMDS is programmed or CUTCOM/OFF follows a CUTCOM/NORMDS.
•
Command to deactivate the compensation normal to the drive surface
• Address parameter
• X address of the compensation vector (ADR_CUTCOM_NORM_DS_OFF):
This parameter defines the activation/deactivation of the compensation mode in a direction
normal to the drive surface. It is output when a CUTCOM/NORMDS is programmed or CUTCOM/OFF follows a CUTCOM/NORMDS.
Page 202
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.12.4
NORMAL TO PART SURFACE
5.4.12.4.1 ADDRESSES
•
X address of the contact point
• Address parameter
• X address of the compensation vector (ADR_CUTCOM_XC_X_AXIS):
This parameter defines the address of the X axis of the contact point. It is output from CATIA
after a CUTCOM/NORMPS command.
•
Y address of the contact point
• Address parameter
• Y address of the compensation vector (ADR_CUTCOM_XC_Y_AXIS):
This parameter defines the address of the Y axis of the contact point. It is output from CATIA
after a CUTCOM/NORMPS command.
•
Z address of the contact point
• Address parameter
• Z address of the compensation vector (ADR_CUTCOM_XC_Z_AXIS):
This parameter defines the address of the Z axis of the contact point. It is output from CATIA
after a CUTCOM/NORMPS command.
•
X address of the compensation vector normal to the part surface
• Address parameter
• X address of the compensation vector (ADR_CUTCOM_XN_VECTOR_X):
This parameter defines the X address of the compensation vector normal to the drive surface.
It is output from CATIA after a CUTCOM/NORMDS command.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 203
Chapter 5 - cPost Tab Pages
•
Y address of the compensation vector normal to the part surface
• Address parameter
• X address of the compensation vector (ADR_CUTCOM_XN_VECTOR_Y):
This parameter defines the Y address of the compensation vector normal to the drive surface.
It is output from CATIA after a CUTCOM/NORMDS command. .
•
Z address of the compensation vector normal to the part surface
• Address parameter
• X address of the compensation vector (ADR_CUTCOM_XN_VECTOR_Z):
This parameter defines the Z address of the compensation vector normal to the drive surface.
It is output from CATIA after a CUTCOM/NORMDS command. .
•
Factor of tool vector (R8_CUTCOM_XN_VECTOR_FACTOR):
This parameter defines the factor for the transformation from APT to ISO. The APT input vector is
multiplied with this factor.
Attention: This parameter can be modified with the macro function CF_SETPARREAL. e.g. OLD =
CF_ SETPARREAL(’’R8_CUTCOM_XN_VECTOR_FACTOR’’,1000.0)
5.4.12.4.2 COMMANDS
•
Command to activate the compensation normal to the part surface
• Address parameter
• X address of the compensation vector (ADR_CUTCOM_NORM_PS_ON):
This parameter defines the activation/deactivation of the compensation mode in a direction
normal to the part surface. It is output when a CUTCOM/NORMPS is programmed or CUTCOM/OFF follows a CUTCOM/NORMPS.
•
Command to deactivate the compensation normal to the part surface
• Address parameter
• X address of the compensation vector (ADR_CUTCOM_NORM_PS_OFF):
This parameter defines the activation/deactivation of the compensation mode in a direction
normal to the part surface. It is output when a CUTCOM/NORMPS is programmed or CUTCOM/OFF follows a CUTCOM/NORMPS.
Page 204
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.13
OPSKIP
•
OPSKIP command:
• Address parameter
• OPSKIP command (ADR_OPSKIP_SIGN_1ST):
This parameter defines the character or character sequence, which should exist in NC program, but which are ignored by the controller. In the APT code, skipped records are enclosed
by the APT commands OPSKIP/ON and OPSKIP/OFF.
Is OPSKIP/ON ,LEVEL defined in the APT code, the LEVEL number is programmed in the
NC-DATA-Output in front of the record number (together with skip character or character
sequence). This skip character or character sequence stands before LEVEL.
• Format
•
OPSKIP 2nd part after recnr (STR_OPSKIP_SIGN_2ND):
This parameter defines the character or character sequence, which should exist in NC program, but
which are ignored by the controller. In the APT code, skipped records are enclosed by the APT commands OPSKIP/ON and OPSKIP/OFF.
Is OPSKIP/ON ,LEVEL defined in the APT code, the LEVEL number is programmed in the NCDATA-Output in front of the record number (together with skip character or character sequence).
This skip character or character sequence stands behind LEVEL.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 205
Chapter 5 - cPost Tab Pages
5.4.14
COMMENTS
•
Comment begin:
• Address parameter
• Comment begin (ADR_COMMENT_START):
This parameter defines a character or character sequence which is output in front of the
actual comment.
For example: this parameter is set to (.
APT: PPRINT/THIS IS THE COMMENT
ISO: N100 (THIS IS THE COMMENT
•
Comment end:
• Address parameter
• Comment end (ADR_COMMENT_END):
This parameter defines a character or character sequence which is output behind the actual
comment.
For example: this parameter is set to ).
APT: PPRINT/THIS IS THE COMMENT
ISO: N100 THIS IS THE COMMENT)
•
Message filter start (STR_MSG_START):
This parameter defines the character sequence which is used to filter the PPRINTs in the APT,e.g.:
Parameter definitions
Message filter start: (
Message filter end: )
In this case the following APT line is not included in NC-program:
PPRINT/ THIS COMMENT IS NOT OUTPUT
However, the following APT line is included in NC-program:
PPRINT/ (THIS COMMENT IS OUTPUT)
•
Message filter end (STR_MSG_END):
This parameter defines the character sequence which is used to filter the PPRINTs in the APT,e.g.:
Parameter definitions
Message filter start: (
Page 206
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
Message filter end: )
In this case the following APT line is not included in NC-program:
PPRINT/ THIS COMMENT IS NOT OUTPUT
However, the following APT line is included in NC-program:
PPRINT/ (THIS COMMENT IS OUTPUT)
•
Maximum comment length (I4_MAX_COM_LENGTH):
This parameter limits the length of the comment in NC-program. If is it set, all comments are truncated to this length. If not the comment is not changed.
•
Output of comments (I4_COMMENTS_UPPERCASE):
This parameter defines, if the comment is output like defined in upper and lower case (0) or only in
upper case (1) or only in upper case and no german umlauts (2). For example Fanuc controllers
support only upper case comments with no german umlauts. PPRINT/(Test) is output as (Test) if
like defined is selected (TEST) if upper case only is selected
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0
(like defined), 1 (uppercase only) or 2 (uppercase only without umlauts).
e.g. OLD = CF_ SETPARINT(’’COMMENTS_UPPERCASE’’,1)
•
Generate comments (I4_COMM_OUTPUT_HANDLING):
This parameter defines if the comment is output and if it is output, how it is output.
Attention: This parameter can not be modified with the macro function CF_SETPARINT.
•
Insert blank lines as comments (I4_COMM_BLANK_LINES):
This parameter defines if a blank line is included before or after a comment.
Attention: This parameter can not be modified with the macro function CF_SETPARINT.
•
Handling of first PPRINTS (I4_SUPRESS_OUTPUT_1ST_PPRINTS):
This parameter defines the handling of the first PPRINTS before the first motion (FROM, GOTO,...)
or tool change command (LOADTL). If suppress is selected, all PPRINTS are only available in the
variable pool (C_FIRST_PPRINTS). If normal output is selected, they are handled like any other
PPRINT.
Attention: This parameter cannot be modified with the macro function CF_SETPARINT.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 207
Chapter 5 - cPost Tab Pages
5.4.15
INSERTS
•
Insert prios and tab:
• Address parameter
• Insert prios and tab (ADR_INSERT):
This parameter defines only the tabulator or the priorities for the output of an INSERT command into the NC data. The address or format are not used.
• Format
•
Generate inserts (I4_INSERT_HANDLING):
This parameter defines how to output the character sequence of the INSERT command.
Attention: This parameter can not be modified with the macro function CF_SETPARINT.
Page 208
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.16
ORIGINS
•
Origin incremental command:
• Address parameter
• Origin incremental command (ADR_ORIGIN_INC):
This parameter defines the command to define an incremental offset. It is output when the
APT command ORIGIN/DATUM,INCR,x,y,z is programmed.
With this command the program zero point, refered to the active program zero point, can be
incrementally (=relatively) shifted. The zero point shift is only output by the postprocessor, but
not considered in any offset calculation.
•
Origin absolute command:
• Address parameter
• Origin absolute command (ADR_ORIGIN_ABS):
This parameter defines the command to define an absolute offset. It is output when the APT
command ORIGIN/DATUM,x,y,z is programmed.
With this command the program zero point, refered to the active program zero point, can be
absolute shifted. The zero point shift is only output by the postprocessor, but not considered
in any offset calculation.
•
Origin manual commands:
• Address parameter
• free text (BLK_ORIGIN_MANUAL_CMD):
This parameters defines the origin offset commands. It is output when a ORIGIN/MANUAL is
programmed. The coordiantes are reduced by this offset, if it is selected.
There are 2 blocks for definition of the origin commands. The output of the two commands is
controlled by way of the tabulator or priority entry.
If only one command is required as origin command, it can be defined in the first or in the second command block.
If two commands are to be output, the command sequences of the two blocks must be
assigned to each other. This is done by separating the command sequences in each line with
semicolons.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 209
Chapter 5 - cPost Tab Pages
If the controller has origin groups and commands, the groups are defined in the second block
and the commands are defined in the first. All commands in one block are separated with a ;.
Example:
Definition:
Origin manual command (1st):
G53;G54;G55;G54;G55
Origin manual command (2nd):
;L101;L101;L102;L102
Input
ORIGIN/MANUAL,0
ORIGIN/MANUAL,1
ORIGIN/MANUAL,2
•
Output:
G53
G54 L101
G55 L101
Origin manual command (2nd):
• Address parameter
• free text (BLK_ORIGIN_MANUAL_CMD_2ND):
This parameters defines the origin offset commands. It is output when a ORIGIN/MANUAL is
programmed. The coordiantes are reduced by this offset, if it is selected.
There are 2 blocks for definition of the origin commands. The output of the two commands is
controlled by way of the tabulator or priority entry.
If only one command is required as origin command, it can be defined in the first or in the second command block.
If two commands are to be output, the command sequences of the two blocks must be
assigned to each other. This is done by separating the command sequences in each line with
semicolons.
If the controller has origin groups and commands, the groups are defined in the second block
and the commands are defined in the first. All commands in one block are separated with a ;.
Example:
Definition:
Origin manual command (1st):
G53;G54;G55;G54;G55
Origin manual command (2nd):
;L101;L101;L102;L102
Input
ORIGIN/MANUAL,0
ORIGIN/MANUAL,1
ORIGIN/MANUAL,2
•
Output:
G53
G54 L101
G55 L101
Subtract Origin manual on coord. (I4_ORIG_MAN_COMPUTATION):
This parameter defines if the offset values of the actual ORIGIN/MANUAL are subtracted of the
actual coordinates or not.
Example:
ORIGIN/MANUAL,1,100,200,300
GOTO /100,200,300
Output if switch is set:
G1 X0 Y0 Z0
Output if switch is not set: G1 X100 Y200 Z300
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0 (do
nothing) or 1 (subtract). e.g. OLD = CF_ SETPARINT(’’ORIG_MAN_COMPUTATION’’,1)
Page 210
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.17
PLANES
5.4.17.1
PLANE XY1
•
Plane XY1 command:
• Address parameter
• Plane XY command (ADR_PLANE_XY):
This parameter defines the plane command of the XY plane. It is output when the APT command MODE/XYPLAN.
Available pool variables:
C_TOOL_AXIS actual tool axis (value here: 3)
C_TOOL_AXIS_SIGN actual tool direction (value here: 1)
C_MODE_PLANE_COM this parameter
•
Plane XY sequence:
• Address parameter block
• free text (BLK_MODE_XY1):
This sequence defines the selection of the XY plane. It is output when the APT command
MODE/XYPLAN is programmed.
Available pool variables:
C_TOOL_AXIS actual tool axis (value here: 3)
C_TOOL_AXIS_SIGN actual tool direction (value here: 1)
C_MODE_PLANE_COM actual plane command
•
X assignment in XY1 Plane (STR_X_XY_ASSIGNMENT):
This parameter defines the relation between CAD axis and machine axis for the XY plane.
Example:
APT: GOTO/ 100,200,300
Assignment: X: +X , Y: +Y, Z: +Z
ISO: G1 X100 Y200 Z300
Assignment: X: +X , Y: -Z, Z: +Y
ISO: G1 X100 Y300 Z-200
Assignment: X: +Z , Y: +Y, Z: +X
ISO: G1 X300 Y200 Z100
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 211
Chapter 5 - cPost Tab Pages
•
Y assignment in XY1 Plane (STR_Y_XY_ASSIGNMENT):
This parameter defines the relation between CAD axis and machine axis for the XY plane.
•
Z assignment in XY1 Plane (STR_Z_XY_ASSIGNMENT):
This parameter defines the relation between CAD axis and machine axis for the XY plane.
Page 212
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.17.2
PLANE XY2
•
Plane XY2 command:
• Address parameter
• Plane XY2 command (ADR_PLANE_XY2):
This parameter defines the plane command of the negative XY plane. It is output when the
APT command MODE/XYPLAN,2.
Available pool variables:
C_TOOL_AXIS actual tool axis (value here: 3)
C_TOOL_AXIS_SIGN actual tool direction (value here: -1)
C_MODE_PLANE_COM this parameter
•
Plane XY2 sequence:
• Address parameter block
• free text (BLK_MODE_XY2):
This sequence defines the selection of the negative XY plane. It is output when the APT command MODE/XYPLAN,2 is programmed.
Available pool variables:
C_TOOL_AXIS actual tool axis (value here: 3)
C_TOOL_AXIS_SIGN actual tool direction (value here: -1)
C_MODE_PLANE_COM actual plane command
•
X assignment in XY2 Plane (STR_X_XY2_ASSIGNMENT):
This parameter defines the relation between CAD axis and machine axis for the XY(2) plane.
Example:
APT: GOTO/ 100,200,300
Assignment: X: +X , Y: +Y, Z: +Z
ISO: G1 X100 Y200 Z300
Assignment: X: +X , Y: -Z, Z: +Y
ISO: G1 X100 Y300 Z-200
Assignment: X: +Z , Y: +Y, Z: +X
ISO: G1 X300 Y200 Z100
•
Y assignment in XY2 Plane (STR_Y_XY2_ASSIGNMENT):
This parameter defines the relation between CAD axis and machine axis for the XY(2) plane.
•
Z assignment in XY2 Plane (STR_Z_XY2_ASSIGNMENT):
This parameter defines the relation between CAD axis and machine axis for the XY(2) plane.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 213
Chapter 5 - cPost Tab Pages
5.4.17.3
PLANE ZX1
•
Plane ZX1 command:
• Address parameter
• Plane ZX1 command (ADR_PLANE_ZX1):
This parameter defines the plane command of the ZX plane. It is output when the APT command MODE/ZXPLAN.
Available pool variables:
C_TOOL_AXIS actual tool axis (value here: 2)
C_TOOL_AXIS_SIGN actual tool direction (value here: 1)
C_MODE_PLANE_COM this parameter
•
Plane ZX1 sequence:
• Address parameter block
• free text (BLK_MODE_ZX1):
This sequence defines the selection of the ZX plane. It is output when the APT command
MODE/ZXPLAN is programmed.
Available pool variables:
C_TOOL_AXIS actual tool axis (value here: 2)
C_TOOL_AXIS_SIGN actual tool direction (value here: 1)
C_MODE_PLANE_COM actual plane command
•
X assignment in ZX1 Plane (STR_X_ZX1_ASSIGNMENT):
This parameter defines the relation between CAD axis and machine axis for the ZX(1) plane.
Example:
APT: GOTO/ 100,200,300
Assignment: X: +X , Y: +Y, Z: +Z
ISO: G1 X100 Y200 Z300
Assignment: X: +X , Y: -Z, Z: +Y
ISO: G1 X100 Y300 Z-200
Assignment: X: +Z , Y: +Y, Z: +X
ISO: G1 X300 Y200 Z100
•
Y assignment in ZX1 Plane (STR_Y_ZX1_ASSIGNMENT):
This parameter defines the relation between CAD axis and machine axis for the ZX(1) plane.
•
Z assignment in ZX1 Plane (STR_Z_ZX1_ASSIGNMENT):
This parameter defines the relation between CAD axis and machine axis for the ZX(1) plane.
Page 214
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.17.4
PLANE ZX2
•
Plane ZX2 command:
• Address parameter
• Plane ZX2 command (ADR_PLANE_ZX2):
This parameter defines the plane command of the negative ZX plane. It is output when the
APT command MODE/ZXPLAN, 2.
Available pool variables:
C_TOOL_AXIS actual tool axis (value here: 2)
C_TOOL_AXIS_SIGN actual tool direction (value here: -1)
C_MODE_PLANE_COM this parameter
•
Plane ZX2 sequence:
• Address parameter block
• free text (BLK_MODE_ZX2):
This sequence defines the selection of the negative ZX plane. It is output when the APT command MODE/ZXPLAN,2 is programmed.
Available pool variables:
C_TOOL_AXIS actual tool axis (value here: 2)
C_TOOL_AXIS_SIGN actual tool direction (value here: -1)
C_MODE_PLANE_COM actual plane command
•
X assignment in ZX2 Plane (STR_X_ZX2_ASSIGNMENT):
This parameter defines the relation between CAD axis and machine axis for the ZX(2) plane.
Example:
APT: GOTO/ 100,200,300
Assignment: X: +X , Y: +Y, Z: +Z
ISO: G1 X100 Y200 Z300
Assignment: X: +X , Y: -Z, Z: +Y
ISO: G1 X100 Y300 Z-200
Assignment: X: +Z , Y: +Y, Z: +X
ISO: G1 X300 Y200 Z100
•
Y assignment in ZX2 Plane (STR_Y_ZX2_ASSIGNMENT):
This parameter defines the relation between CAD axis and machine axis for the ZX(2) plane.
•
Z assignment in ZX2 Plane (STR_Z_ZX2_ASSIGNMENT):
This parameter defines the relation between CAD axis and machine axis for the ZX(2) plane.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 215
Chapter 5 - cPost Tab Pages
5.4.17.5
PLANE YZ1
•
Plane YZ1 command:
• Address parameter
• Plane YZ1 command (ADR_PLANE_YZ1):
This parameter defines the plane command of the YZ plane. It is output when the APT command MODE/YZPLAN.
Available pool variables:
C_TOOL_AXIS actual tool axis (value here: 1)
C_TOOL_AXIS_SIGN actual tool direction (value here: 1)
C_MODE_PLANE_COM this parameter
•
Plane YZ1 sequence:
• Address parameter block
• free text (BLK_MODE_YZ1):
This sequence defines the selection of the YZ plane. It is output when the APT command
MODE/YZPLAN is programmed.
Available pool variables:
C_TOOL_AXIS actual tool axis (value here: 1)
C_TOOL_AXIS_SIGN actual tool direction (value here: 1)
C_MODE_PLANE_COM actual plane command
•
X assignment in YZ1 Plane (STR_X_YZ1_ASSIGNMENT):
This parameter defines the relation between CAD axis and machine axis for the YZ(1) plane.
Example:
APT: GOTO/ 100,200,300
Assignment: X: +X , Y: +Y, Z: +Z
ISO: G1 X100 Y200 Z300
Assignment: X: +X , Y: -Z, Z: +Y
ISO: G1 X100 Y300 Z-200
Assignment: X: +Z , Y: +Y, Z: +X
ISO: G1 X300 Y200 Z100
•
Y assignment in YZ1 Plane (STR_Y_YZ1_ASSIGNMENT):
This parameter defines the relation between CAD axis and machine axis for the YZ(1) plane.
•
Z assignment in YZ1 Plane (STR_Z_YZ1_ASSIGNMENT):
This parameter defines the relation between CAD axis and machine axis for the YZ(1) plane.
Page 216
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.17.6
PLANE YZ2
•
Plane YZ2 command:
• Address parameter
• Plane YZ2 command (ADR_PLANE_YZ2):
This parameter defines the plane command of the negative YZ plane. It is output when the
APT command MODE/YZPLAN, 2.
Available pool variables:
C_TOOL_AXIS actual tool axis (value here: 1)
C_TOOL_AXIS_SIGN actual tool direction (value here: -1)
C_MODE_PLANE_COM this parameter
•
Plane YZ” sequence:
• Address parameter block
• free text (BLK_MODE_YZ2):
This sequence defines the selection of the negativeYZ plane. It is output when the APT command MODE/YZPLAN,2 is programmed.
Available pool variables:
C_TOOL_AXIS actual tool axis (value here: 1)
C_TOOL_AXIS_SIGN actual tool direction (value here: -1)
C_MODE_PLANE_COM actual plane command
•
X assignment in YZ2 Plane (STR_X_YZ2_ASSIGNMENT):
This parameter defines the relation between CAD axis and machine axis for the YZ(2) plane.
Example:
APT: GOTO/ 100,200,300
Assignment: X: +X , Y: +Y, Z: +Z
ISO: G1 X100 Y200 Z300
Assignment: X: +X , Y: -Z, Z: +Y
ISO: G1 X100 Y300 Z-200
Assignment: X: +Z , Y: +Y, Z: +X
ISO: G1 X300 Y200 Z100
•
Y assignment in YZ2 Plane (STR_Y_YZ2_ASSIGNMENT):
This parameter defines the relation between CAD axis and machine axis for the YZ(2) plane.
•
Z assignment in YZ2 Plane (STR_Z_YZ2_ASSIGNMENT):
This parameter defines the relation between CAD axis and machine axis for the YZ(2) plane.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 217
Chapter 5 - cPost Tab Pages
5.4.17.7
PLANE ZXL
•
Plane ZXL command:
• Address parameter
• Plane ZXL command (ADR_PLANE_ZXL):
This parameter defines the plane command of the ZX plane for turning. It is output when the
APT command MODE/ZXPLAN, L.
Available pool variables:
C_MODE_PLANE_COM this parameter
•
Plane ZXL sequence:
• Address parameter block
• free text (BLK_MODE_ZXL):
This sequence defines the selection of the ZX plane for turning. It is output when the APT
command MODE/ZXPLAN,L is programmed.
Available pool variables:
C_MODE_PLANE_COM actual plane command
•
X assignment in ZXL Plane (STR_ZX_LATHE_X_ASSIGNMENT):
This parameter defines the relation between CAD axis and machine axis for the ZXL plane.
Example:
APT: GOTO/ 100,200,300
Assignment: X: +2*X , Y: +Y, Z: +Z
ISO: G1 X200 Y200 Z300
Assignment: X: +X , Y: -Z, Z: +Y
ISO: G1 X100 Y300 Z-200
Assignment: X: +Z , Y: +Y, Z: +X
ISO: G1 X300 Y200 Z100
•
Y assignment in ZXL Plane (STR_ZX_LATHE_Y_ASSIGNMENT):
This parameter defines the relation between CAD axis and machine axis for the ZXL plane.
•
Z assignment in ZXL Plane (STR_ZX_LATHE_Z_ASSIGNMENT):
This parameter defines the relation between CAD axis and machine axis for the ZXL plane.
•
ZXL-Plane is also valid default for milling (I4_ZXLPLANE_STD_MILL):
This switch defines if the ZXL plane is to be used for standard milling operations.
Page 218
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.17.8
•
OPTIONS
Support MODE command in angle calculation (I4_MODE_5AXIS_HANDLING):
This switch defines if the MODE command is supported on 5 axis angle calculation.
If the switch is set, on each MODE command the default tool direction will be calculated. This tool
direction is then used for the following angle calculations.
Example (2 Axis on table machine with tilting head):
MODE/XYPLAN
GOTO/0,0,0,0,0,1
GOTO/0,0,0,0,1,0
MODE/ZXPLAN
GOTO/0,0,0,0,1,0
ISO with “Support MODE command in angle calculation” on:
G1 X0 Y0 Z0 A0 C0
G1 X0 Y0 Z0 A90 C0
G18
// new default tool vector for angle calculation (0,1,0)
G1 X0 Y0 Z0 A0 C0
ISO with “Support MODE command in angle calculation” off:
G1 X0 Y0 Z0 A0 C0
G1 X0 Y0 Z0 A90 C0
G18
// no redefinition of default tool vector for angle calculation (0,0,1)
G1 X0 Y0 Z0 A90 C0
•
Automatic Mode generation (I4_AUTO_MODE):
This parameter defines if the Post Processor generates automatic plane commands. If the switch is
set, the plane is calculated from the tool vector. If the vector changes, a new plane command is created.
•
Plane factors also incremental? (I4_PLANE_FACT_INCR):
This switch defines if the factors for the plane assignments are incremental or not.
•
Tlaxis support (I4_TLAXIS_SUPPORT):
This switch defines if the TLAXIS command is supported or not. If it is supported the APT command
TLAXIS/0,0,1 and the APT command MODE/XYPLAN have the same results.
•
Starting plane (STR_DEFAULT_PLANE):
This parameter defines the starting working plane of the toolmachine.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 219
Chapter 5 - cPost Tab Pages
5.4.18
SETPLANE
5.4.18.1
COORDINATES
•
Address of 1st SETPLN axis:
• Address parameter
• Address of 1st SETPLN axis (ADR_SETPLN_1ST_COORD):
This parameter defines the address of the first coordinate in the plane defined with SETPLN/
ON. If no address is defined, the postprocessor uses the same coordinates as in the other
planes.
• Format
•
Address of 2nd SETPLN axis:
• Address parameter
• Address of 2nd SETPLN axis (ADR_SETPLN_2ND_COORD):
This parameter defines the address of the second coordinate in the plane defined with SETPLN/ON. If no address is defined, the postprocessor uses the same coordinates as in the
other planes.
• Format
•
Address of 3rd SETPLN axis:
• Address parameter
• Address of 3rd SETPLN axis (ADR_SETPLN_3RD_COORD):
This parameter defines the address of the third coordinate in the plane defined with SETPLN/
ON. If no address is defined, the postprocessor uses the same coordinates as in the other
planes.
• Format
Page 220
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.18.2
OPTIONS
•
Output of tool tip on SETPLN (I4_5X_SETPLN_RTCP):
This parameter defines which point is output in SETPLN mode. If the switch is set, the tool tip is output. If not, cPost output the pivot point. Attention: This parameter can be modified with the macro
function CF_SETPARINT. Possible values are 0 (pivot) or 1 (tip).
e.g. OLD = CF_ SETPARINT(’’5X_SETPLN_RTCP’’,1)
•
Frame definition (I4_SETPLN_EULER_ANGLES):
This parameter defines which angles are used for the new frame definition. The choice is between
machine angles and Euler angles. If Euler angles are choosen, these Angles must also be defined
(Motions->Coordiantes->5X Euler).
Attention: This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0 (machine angles are used) or 1 (Euler angles are used).
e.g. OLD = CF_ SETPARINT(’’SETPLN_EULER_ANGLES’’,1)
•
Handling of a tool change in SETPLN section (I4_SETPLN_DEL_REPEAT_LOADTL):
This parameter defines if the automatic SETPLN function is interrupted at each LOADTL. The
choice is between ’’Interrupt’’ and ’’No interrupt necessary’’.
If “Interrupt” is selected, the SETPLN transformation is switch off before the tool change and
switched on afterwards.
For example :
’switch off and repeat’’
’’no interrupt necessary ’’
SETPLN/ON
SETPLN/ON
....
......
GOTO/100,100,100,0,0,1
GOTO/100,100,100,0,0,1
SETPLN/OFF is insert here
LOADTL/2
LOADTL/2
SETPLN/ON is insert here
GOTO/300,300,200,0,0,1
GOTO/300,300,200,0,0,1
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0 (no
interrupt) or 1 (Switch off and repeat). e.g.
OLD = CF_ SETPARINT(''SETPLN_DEL_REPEAT_LOADTL'',1)
•
New frame also for initial vector (I4_SETPLN_AUTO_INIT):
This parameter defines the behaviour of the automatic SETPLN, if the initial tool vector is input.
cPost offers the following possibilities: - Activation of the frame (1). - No activation of this frame (0).
In this case the old frame is only switched off.
Attention:
This parameter can be modified with the macro function CF_SETPARINT. Possible values are 0
(don’t activate) or 1 (activate). e.g. OLD = CF_ SETPARINT(’’SETPLN_AUTO_INIT’’,1)
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 221
Chapter 5 - cPost Tab Pages
5.4.18.3
SEQUENCES
•
SETPLN on sequence:
• Address parameter block
• free text (BLK_SETPLANE_ON):
This block defines the nc sequence to define special planes. It is output when a SETPLN/ON
is programmed. All following motion coordiantes are transformed in the new axis system.
•
SETPLN off sequence:
• Address parameter block
• free text (BLK_SETPLANE_OFF):
This block defines the nc sequence to finish the working on special planes. It is output when a
SETPLN/OFF is programmed.
Page 222
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.19
POLAR PLANE
5.4.19.1
ADDRESSES FOR POLAR PLANE
•
Address of radius:
• Address parameter
• Address of radius (ADR_POLAR_MODE_RADIUS):
This parameter defines the address and format of motion coordinate for the radius output in
polar mode. This mode is switched on with MODE/POLAR, , , , and switched off with
MODE/POLAR,OFF. If the plane XY is defined as polar plane, X and Y coordiantes are used
for angle and radius calculation. Z is not changed.
• Format
•
Address of angle:
• Address parameter
• Address of angle (ADR_POLAR_MODE_ANGLE):
This parameter defines the address and format of motion coordinate for the angle output in
polar mode. This mode is switched on with MODE/POLAR, , , , and switched off with
MODE/POLAR,OFF. If the plane XY is defined as polar plane, X and Y coordiantes are used
for angle and radius calculation. Z is not changed.
• Format
•
Address of linear axis:
• Address parameter
• Address of linear axis (ADR_POLAR_MODE_LINEAR_AXIS):
This parameter defines the address and format of motion coordinate for the angle output in
polar mode. This mode is switched on with MODE/POLAR, , , , and switched off with
MODE/POLAR,OFF. If the plane XY is defined as polar plane, X and Y coordiantes are used
for angle and radius calculation. Z is not changed.
• Format
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 223
Chapter 5 - cPost Tab Pages
5.4.19.2
MOTION COMMANDS
•
Rapid command:
• Address parameter
• Rapid command (ADR_POLAR_MODE_RAPID_1ST):
This parameter defines the command for rapid movements in polar mode. Generated by the
APT-Words
RAPID
GOTO/x, y, z
•
Rapid command (2nd part):
• Address parameter
This parameter defines the 2nd part of the command for rapid movements in polar mode.
•
Linear interpolation command:
• Address parameter
• Linear interpolation command (ADR_POLAR_MODE_LINEAR_1ST):
This parameter defines the command for linear movements in polar mode.
•
Linear interpolation command (2nd):
• Address parameter
• Linear interpolation command (2nd) (ADR_POLAR_MODE_LINEAR_2ND):
This parameter defines the second part of the linear motion statement, in case the controller
requires a divided command (two parts).
Page 224
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.19.3
OPTIONS
•
Linear accuracy (R8_POLAR_MODE_LIN_TOL):
This parameter defines the default accuracy for linear movements in polar mode. This mode is
switched on with MODE/POLAR, , , , and switched off with MODE/POLAR,OFF. All linear movements in this plane will be splitted in dependence of this linear accuracy.
•
Circle accuracy (R8_POLAR_MODE_CIR_TOL):
This parameter defines the default accuracy for circular movements in polar mode. This mode is
switched on with MODE/POLAR, , , , and switched off with MODE/POLAR,OFF. All circular
movements in this plane will be splitted in dependence of this circular accuracy.
•
Angle offset (R8_POLAR_MODE_OFFSET_ANGLE):
This parameter defines the offset of the angle in polar mode. This mode is switched on with MODE/
POLAR, , , , and switched off with MODE/POLAR,OFF.
If the plane XY is defined as polar plane, X and Y coordiantes are used for angle and radius calculation. Z is not changed. 0 degree for the angle means, the point is on the X axis. If your controller
needs another value, this offset must be defined here.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 225
Chapter 5 - cPost Tab Pages
5.4.19.4
SEQUENCES
•
POLAR on sequence:
• Address parameter block
• free text (BLK_POLAR_MODE_ON):
This sequence defines the switch on commands for the polar mode. This sequence is output
when a MODE/POLAR, , , , is programmed. The XY coordiantes of this plane will be transformed to radius and angle coordiantes. All linear and circular movements in this plane will be
splitted in dependence of its accuracies.
•
POLAR off sequence:
• Address parameter block
• free text (BLK_POLAR_MODE_OFF):
This sequence defines the switch off commands for the polar mode. This sequence is output
when a MODE/POLAR, OFF is programmed.
•
POLAR macro name (STR_POLAR_MODE_MACRO_NAME):
This parameter defines the macro name for the polar mode handling. It is called by each MODE/
POLAR command when it is defined. If there is no macro defined and this parameter is blank, the
sequences for switching on/off are called.
Page 226
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.20
CYCLES
5.4.20.1
Each Cycle
•
Cycle selection:
• Select cycle:
First you have to select a cycle definition in the pull down menu. If there is no cycle defined
you have to fill out all necessary parameters. After that you can add the new defined cycle.
If you have choosen one of the existing once you can modify them.
For the definition of call and end command you have the choice to use block definitions or
simple commands. Depending on the choice the panel changes slightly.
•
Cycle name:
• Cycle name (CYC_CYCLE_01):
This parameter defines the name of the cycle. The name of the cycle is also the first parameter of the APT command CYCLE/ <cycle name>, <cycle parameters> .
• Link Handling:
This parameter defines what cPost have to do if the value of the Z axis changes between two
cycle calls.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 227
Chapter 5 - cPost Tab Pages
For example:
APT input:
CYCLE / DRILL,1,2
GOTO / 10,20,30
GOTO / 20,10,30
GOTO / 30,40,50
GOTO / 40,50,50
CYCLE / OFF
The Z value changes between cycle call 2 and cycle call 3. cPost will make the following
actions:
“Do nothing”:
Everything is output like programmed.
G81 TI1 SI2
G79 X10 Y20 Z30
G79 X20 Y10
G79 X30 Y40 Z50
G79 X40 Y50
G80
“'Only link”':
cPost inserts the cycle link sequence between point 2 and point 3.
G81 TI1 SI2
G79 X10 Y20 Z30
G79 X20 Y10
G0 X20 Y10 Z50
!!!! automatic inserted link sequence
G79 X30 Y40
G79 X40 Y50
G80
“Link and definition”:
cPost inserts the cycle link block and repeats the cycle definition sequence between point 2
and point 3.
G81 TI1 SI2
G79 X10 Y20 Z30
G79 X20 Y10
G80
G0 X20 Y10 Z50
!!!! automatic inserted link sequence
G81 TI1 SI2
!!!! automatic inserted definition sequence
G79 X30 Y40
G79 X40 Y50
G80
“Only definition”:
cPost inserts the cycle definition sequence between point 2 and point 3.
G81 TI1 SI2
G79 X10 Y20 Z30
G79 X20 Y10
G80
G81 TI1 SI2
!!!! automatic inserted definition sequence
G79 X30 Y40
G79 X40 Y50
G80
Page 228
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
•
Output of 1st GOTO
This parameter defines the handling of the first cycle call position. If “in definition” is selected,
cPost supresses the first position (GOTO) after the definition. This position has to be defined
in the cycle definition block. If “after definition” is selected, the first position (GOTO) is output
like any other position after the cycle definition.
Example:
CYCLE / DRILL,1,2
GOTO / 10,20,30
GOTO / 20,20,30
Output with first position in cycle definition:
N10 G0 X10 Y20
N20 G81 TI1 SA2
N30 G79 X20 Y20
Output with first position after cycle definition:
N10 G81 TI1 SA2
N20 G79 X10 Y20
N30 G79 X20 Y20
•
•
•
•
Output of definition
This parameter defines the position of the output of the cycle definition. The choice is
between:
• in program (at programming position)
• at end
formula of approach value (long) (CYC_CYCLE_01):
This parameter defines the modification of the Z value of the cycle for the long definition form.
formula of approach value (short) (CYC_CYCLE_01):
This parameter defines the modification of the Z value of the cycle for the short definition
form.
use Block definitions:
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 229
Chapter 5 - cPost Tab Pages
•
Cycle call sequence:
• Address parameter block
• free text (BLK_CYCLE_CALL_01):
This sequence defines the cycle call. It is output for each cycle call position (GOTO
between CYCLE/ ,..... and CYCLE/OFF). cPost offers 2 call possiblities: output of this
sequences for complex calls or output of simple parameters.
Available pool variables:
C_VARGR() all parameters as real numbers with index 1.... to number
C_VARG$() all parameters as strings with index 1.... to number
C_AXIS_X_NXT_POS X coordiante of call position
C_AXIS_Y_NXT_POS Y coordiante of call position
C_AXIS_Z_NXT_POS Z coordiante of call position
•
Cycle end sequence:
• Address parameter block
• free text (BLK_CYCLE_END_01):
This sequence defines the cycle end command. It is output when a CYCLE/OFF is programmed. cPost offers 2 cycle end possiblities: output of this sequences for complex end
commands or output of simple parameters.
•
Cycle long definition sequence
• Address parameter block
• free text (BLK_CYCLE_LONG_01):
This sequence defines the long form of the cycle definition. It is output when a CYCLE/
,..... is programmed. cPost offers 2 definition sequences: a short and a long form. If the
APT CYCLE command has enough variables for the long form, cPost output the long form.
In the other case the short form is output.
Available pool variables:
C_VARGR() all parameters as real numbers with index 1.... to number
C_VARG$() all parameters as strings with index 1.... to number
•
Cycle short definition sequence
• Address parameter block
• free text (BLK_CYCLE_SHORT_01):
This sequence defines the short form of the cycle definition. It is output when a CYCLE/
,..... is programmed. cPost offers 2 definition sequences: a short and a long form. If the
APT CYCLE command has enough variables for the long form, cPost output the long form.
In the other case the short form is output.
Available pool variables:
C_VARGR() all parameters as real numbers with index 1.... to number
C_VARG$() all parameters as strings with index 1.... to number
•
Link sequence v->h
• Address parameter block
• free text (BLK_CYCLE_LINK_VH_01):
This sequence defines the cycle link block. It is output if the Z value of the cycle positions
changes from lower to higher between CYCLE/ON and CYCLE/OFF.
CYCLE / DRILL,1,2
GOTO / 10,20,30
GOTO / 20,10,30
GOTO / 30,40,10
GOTO / 40,50,10
CYCLE / OFF
cPost output this block between point 2 and point 3.
•
Link sequence h->v
• Address parameter block
• free text BLK_CYCLE_LINK_HV_01):
This sequence defines the cycle link block. It is output if the Z value of the cycle positions
changes from higher to lower between CYCLE/ON and CYCLE/OFF.
CYCLE / DRILL,1,2
Page 230
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
GOTO / 10,20,30
GOTO / 20,10,30
GOTO / 30,40,10
GOTO / 40,50,10
CYCLE / OFF
cPost output this block between point 2 and point 3.
•
no use of Block definitions:
•
•
•
Cycle call command:
• Address parameter
• Cycle call command (ADR_CYCLE_01):
Definition of the first part of the cycle call command
• Format
Cycle call command (2nd):
• Address parameter
• Cycle call command (2nd) (ADR_CYCLE_CALL2_01):
Definition of the second part of the cycle call command, in case the controller needs two
different parts.
• Format
Cycle end command:
• Address parameter
• Cycle end command (ADR_CYCLE_END_01):
Definition of the cycle end command.
• Format
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 231
Chapter 5 - cPost Tab Pages
5.4.21
LATHE SEQUENCES
5.4.21.1
CLAMP
•
Clamp on:
• Address parameter block
• free text (BLK_CLAMP_ON):
This sequence is output when the APT command CLAMP/OFF is programmed.
•
Clamp off:
• Address parameter block
• free text (BLK_CLAMP_OFF):
This sequence is output when the APT command CLAMP/ON is programmed.
•
Clamp chuck:
• Address parameter block
• free text (BLK_CLAMP_CHUCK):
This sequence is output when the APT command CLAMP/CHUCKOFF is programmed.
•
Clamp barfed:
• Address parameter block
• free text (BLK_CLAMP_BARFED):
This sequence is output when the APT command CLAMP/BARFED is programmed.
Page 232
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.21.2
RETURN
•
Return on sequence:
• Address parameter block
• free text (BLK_RETURN_ON):
This sequence is output when the APT command RETURN/ON is programmed.
•
Return off sequence:
• Address parameter block
• free text (BLK_RETURN_OFF):
This sequence is output when the APT command RETURN/OFF is programmed.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 233
Chapter 5 - cPost Tab Pages
5.4.21.3
•
SWITCH
Switch sequence:
• Address parameter block
• free text (BLK_SWITCH):
This sequence defines the sequence to change some TOOLNO data and is output when the
APT command SWITCH is programmed.
Available pool variables:
C_TLNO_QUADRANT_C new tool quadrant
C_TLNO_GAUGE_LEN_X_C new tool gauge length in X
C_TLNO_GAUGE_LEN_Y_C new tool gauge length in Y
C_TLNO_TIP_RADIUS new tool tip radius
Page 234
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 5 - cPost Tab Pages
5.4.22
WIRE SEQUENCES
5.4.22.1
THREAD
•
Threading sequence:
• Address parameter block
• free text (BLK_WIRE_THREAD):
This sequence defines the threading sequence. It is output when a WIRE/THREAD is programmed.
•
Cutting sequence:
• Address parameter block
• free text (BLK_WIRE_CUT):
This sequence defines the cutting sequence. It is output when a WIRE/CUT is programmed.
5.4.22.2
•
OPTIONS
Old handling of CHNGRG (I4_WIRE_OLD_CHNGRG ):
This parameter defines how the CHNGRG is managed by cPost. If it is set to OLD handling (1), the
next 2 motions after a CHNGRG/PROFILE or POCKET are suppressed and the data of these
motions must be managed with a CHNGRG macro. This is the handling of V1R4 pps. In cPost version V1R6 and higher it is possible to do the complete handing in macros. This is the default of the
new pps.
Attention: This parameter cannot be modified with the macro function CF_SETPARINT.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 235
Chapter 5 - cPost Tab Pages
5.4.23
MACROS
•
Macro definition:
• Select macro:
First you have to select a macro definition in the pull down menu. If there is no macro defined
you have to define one. After that you can add the new defined macro. If you have choosen
one of the existing once you can modify them.
•
Macro name:
This defines the name of the macro or the sequence. It must be the same like the APT command in
the source file.
•
Modal switch, Read ahead switch and priorities:
This switches work like in any other sequence (see . ##### Baerbel referenz zu tab pages in kap
2???? ######
•
Macro or Block
This switch defines if the following sequence is handled like a macro or like a sequence. Macros
have more functions, but are slower in execution. Both have different command syntaxes.
•
Free text:
Here you can define or change the selected macro or block. For macros you have to use the cPost
Macro Language, for sequences you have to use the sequence syntax.
•
Event switch
This defines if the macro has a corresponding event in the products CUT4AXES or FastTRIM.
•
Free text:
This text field defines the event. Only for cenit products available.
Page 236
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6
APT-Syntax
The program processes a data format with a syntax corresponding to the APT input data format. APT geometrical descriptions are only supported to the extent to which they are generated
in the CAD/CAM system (APT commands GOTO, GODLTA and INDIRV).
All other APT commands supported by the Post Processor fall into the category of Post Processor commands with which machine functions can be directly addressed (APT commands
FEDRAT, SPINDL, RAPID...).
The following is a list of the APT commands supported by the program.
ANGTWO
The APT command ANGTWO is used to choose the other angle solution in MULTAX mode.
AUXFUN
The APT command AUXFUN is used to output extra machine commands. The command
number n and the corresponding address defined in the PP will be generated.
BARFED
This APT command is only supported by Post Processors for turning tool machines.
The APT command BARFED causes an automatic feed of the raw material.
BEGIN NURBS
The APT command BEGIN NURBS is used to define a NURBS.
C_VARDEL
The APT command C_VARDEL is used to delete variables in the variable pool.
C_VARPUT
The APT command C_VARPUT is used to put new variables in the variable pool.
CALSUB
The APT command CALSUB can be used to call internal (controller) and self-defined subprograms.
CHNGRG
This APT command is only supported by Post Processors for wire machines.
The APT command CHNGRG defines the beginning or end of a contour and the necessary
contour data.
CIR2PT
The APT command CIR2PT is used to define a CIRCLE with a VIA point
CLAMP
This APT command is only supported by Post Processors for turning tool machines.
The APT command CLAMP controls the clamp of a workpiece.
CONIC
This APT command is only supported by Post Processors for wire machines.
The APT command CONIC defines the fixed conic angle of a contour.
COOLNT
This APT command can be used to activate or deactivate the coolant.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 237
Chapter 6 - APT-Syntax
CUTCOM
The APT command CUTCOM activates/deactivates the tool radius or length compensation.
CUTTER
The APT statement CUTTER stands for the formal description of the tool used.
CYCLE
The CYCLE statement describes a machine cycle which is executed with all subsequent GOTO
statements.
DEFPLN
The APT command DEFPLN is used to define some special frames together with the APT command SETPLN.
DEFSUB
The APT command DEFSUB indicates the start of a subprogram to be terminated with the APT
command ENDSUB and called with the APT command CALSUB (See CALSUB and ENDSUB
command).
DELAY
The APT command DELAY controls the path of the tool.
DOF_GOTO
The APT command DOF_GOTO is used internal to support some MIK features. The syntax is
equal to the GOTO syntax. The only difference between a GOTO and a DOF_GOTO is the suppressed ISO output of the DOF_GOTO.
DUMP
The APT command DUMP creates a list of all pool variables and values at a certain point of
the APT program and writes this list in the Post Processor execution report.
DWELL
The APT command DWELL produces a dwell time of n seconds at the output point in the APT/
NC program.
ENDSUB
The APT command ENDSUB marks the end of a subprogram. The subprogram is identified by
the subprogram number n (see CALSUB and DEFSUB).
END NURBS
The APT command ENDNURBS marks the end of a NURBS definition (see BEGIN NURBS).
FEDRAT
The APT statement FEDRAT defines the feed rate for the subsequent tool movements.
FINI
The APT command FINI marks the end of the APT program and causes the output of the machine command for the end of the NC program.
FROM
The APT command FROM defines a rapid motion from the defined tool loading point to the
starting position.
Page 238
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
GODLTA
The APT command GODLTA produces relative linear movement of the tool starting from the
current position by the values X, Y and Z or along the tool axis (Z).
GOHOME
The APT command GOHOME produces linear movement of the tool from the current position
either to the point defined with the APT command FROM or to the default point given in the
Post Processor.
GOTO
The APT command GOTO produces linear movement of the tool from the current position to
the point with the absolute coordinates X, Y and Z.
HEIGHT
This APT command is only supported by Post Processors for wire machines.
The APT command HEIGHT defines the height of the part.
IGNORE
APT lines between IGNORE / ON and IGNORE / OFF will be ignored by the Post Processor
and cause no output in the NC program.
INDIRV
The APT command INDIRV causes the tool to move in a circular path around the described
centre point to an end position defined in the LINE statement.
INSERT
With the INSERT command any instruction can be inserted into the NC program.
LOADTL
This APT command either produces a tool change command in the NC program or selects new
registers for unchanged tool numbers.
MACH_AXIS
The APT command MACH_AXIS defines a new axis system.
MIKFUN
The APT command MIKFUN is used internal to support some MIK features.
MODE
Milling
The APT command MODE has many functions:
•
•
•
•
•
The motion is output incrementally with INCR, ON and in absolute terms with INCR, OFF. As standard, the motion instructions are calculated as absolute values.
The options XYPLAN, ZXPLAN and YZPLAN make it possible to switch between the five machining
planes. The Post Processor converts the coordinates according to chosen plane.
The option POLAR is used to activate or deactivate the polar mode.
The option FRAME is used to activate or deactivate the automatic SETPLN (FRAME) support.
The option CLAMP is used to define the output of the rotation angles.
Turning
The APT command MODE has the following functions:
•
•
The motion is output incrementally with INCR, ON and in absolute terms with INCR, OFF. As standard, the motion instructions are calculated as absolute values.
The options XYPLAN, ZXPLAN and YZPLAN make it possible to switch between the five machining
planes for powered tools.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 239
Chapter 6 - APT-Syntax
•
The option ZXPLAN, L selects the ZX coordinate system of the turning operation. The Post Processor converts the coordinates in line with the chosen plane.
MOTION
This APT command is only supported by Post Processors for wire machines.
The APT command MOTION defines motion with 2 contours instead of a GOTO with a tool vector.
MULTAX
The APT command MULTAX defines the 5 axis mode.
OPSKIP
Skippable records which are generated with the appropriate character before the line and with
the level number (if level is defined), are skipped by the NC machine tool.
ORIGIN
cPost supports also programmed (G92) and manual (G54, G55,...) NC origin offsets.
The ORIGIN and ORIGIN / MANUAL coordinates are interpreted in CAD measurement unit.
The factor is used to convert the values into NC measurement units.
Coordinates for ORIGIN / DATUM are in NC measurement unit.
OUTPUT
The APT command OUTPUT is used to define the NC output handling.
PARTNO
The APT command PARTNO stands for the designation or NC program number of the part to
be manufactured.
PITCH
The APT command PITCH can be used to program the thread pitch as an alternative to the
THREAD command.
PPRINT
The APT statement PPRINT is used to mark comments in the APT program.
PREFUN
The APT command PREFUN is used to generate extra motion commands.
RAPID
If the APT command RAPID is output, the next linear motion of the tool (GOTO, GODLTA) is a
rapid motion.
REGLTL
The APT command REGLTL defines the compensation registers for the actual tool. It is autmaticly generated from the LOADTL by cPost.
RETURN
RETURN activates (ON) or deactivates (OFF) the rear side treatment of a movement component.
REWIND
The APT command REWIND effects repetition of part of a program.
Page 240
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
SAFETY
The APT command SAFETY defines the safety plane.
SELCTL
This APT command preselects the tool with the appropriate tool number.
SEQNO
The APT command SEQNO defines the record numbering in the NC program.
SETANG
The APT command SETANG is used to modify the angle output in MULTAX mode.
SETPLN
The APT command SETPLN is used to define new frames in MULTAX mode.
SPINDL
The APT command SPINDL is used either to establish the spindle speed (minor word RPM) or
the constant cutting rate (minor word SFM) and the direction of rotation of the machining spindle or to deactivate the spindle.
STOP
The APT command STOP causes the output of a program stop command.
SWITCH
This APT command is only supported by Post Processors for turning tool machines.
The APT command SWITCH defines a new reference point for the current tool and changes
consequently the referred point of the edge position.
TAG
The APT command TAG is a motion command like a 5 axis GOTO with an additional vector for
the orientation of the tool (6 axis). This command is generetad by FasTRIM.
THREAD
The APT command THREAD results in output of the thread cutting command for turning and
facing rates.
TLAXIS
The APT command TLAXIS describes the working plane by the vector perpendicular to this
plane (i.e. tool axis vector).
TOOLNO
The APT command TOOLNO replaces the APT command CUTTER and stands for the description of the tool used.
TPRINT
The statement TPRINT is used to mark comments following TOOLNO statement in the APT
program.
WIRE
This APT command is only supported by Post Processors for wire machines.
The APT command WIRE is used to cut or thread the wire.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 241
Chapter 6 - APT-Syntax
6.1
ANGTWO
Description
The APT command ANGTWO is used to choose the other angle solution in MULTAX mode.
cPost calculates for each tool vector the possible angles and choose the solution in dependence of its 5 axis parameters. If cPost must output the other solution in some special cases,
the ANGTWO command must be programmed before this motion. This command has no output.
Syntax
ANGTWO
Example
APT:
GOTO/100,100,100,0,1,0
ANGTWO
GOTO/110,100,100,0,1,0
NC:
N100 G1 X100 Y100 Z100 A90 C0
N110 G1 X110 Y100 Z100 A-90 C180
cPost calculates the angle solutions A90 C0 and A-90 C180 for the tool vector (0,0,1). If ANGTWO
is not programmed, cPost choose the first angle solution for output. If ANGTWO is programmed,
cPost must not use the first solution. In this case the second angle solution is output.
Page 242
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.2
AUXFUN
Description
The APT command AUXFUN is used to output extra machine commands. The command
number n and the corresponding address defined in the PP will be generated.
Syntax
AUXFUN / n
AUXFUN / n,
 LAST 


 NOW 


 NEXT 
where
n
=
Number of machine command: Mn
LAST
=
Output in last NC record
NOW
=
Output as separate NC record
NEXT
=
Output in next NC record
Example
APT:
AUXFUN / 18
NC:
N100 M18
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 243
Chapter 6 - APT-Syntax
6.3
BARFED
Description
This APT command is only supported by Post Processors for turning tool machines.
The APT command BARFED causes an automatic feed of the raw material. BARFED is used
in combination with the command CLAMP.
Note
The values are given in the CAD length measurement unit. The values are not converted into
NC measurement unit, except for a manual conversion in the NC block definition.
Syntax


BARFED/spnr, offset, dm, l,  ON 
 OFF 
where
spnr
=
Spindle number
offset
=
Value of origin offset
dm
=
Diameter of raw material
l
=
Length of raw material
ON
=
Feed occurs through the bar
OFF
=
Feed does not occur through the bar
but through the clamps
Page 244
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.4
BEGIN NURBS
6.4.1
Standard 3X
Description
The description of the format for a NURBS definition generated by CATMFG is as follows:
•
a starting statement
BEGIN NURBS (DEG=n, FED=feed, AXIS=i, j, k)
where
•
n
=
degree of the NURBS (degree means Order-1)
feed
=
feedrate value used for the NURBS (in model units per minute)
i, j, k
=
components of the tool axis
the poles description, with each pole description written on one line
Ni, X=x(i), Y=y(i), Z=z(i), DK =dk(i), W=w(i)
where
•
i
=
pole number (from 0 to NumberOfPole-1)
x, y, z
=
coordinates of the pole
dk
=
increment of nodal parameter for the pole
w
=
pole weight
an end statement, which ends the pols list
END NURBS
Example
BEGIN NURBS (DEG=3, FED=100.000000, AXIS=0.000000, 0.000000, 1.000000);
N0, X=2.000100, Y=-8.000000, Z=10.000000, DK=0.000000, W=1.000000;
N1, X=2.000100, Y=-8.004114, Z=8.397441, DK=4.803634, W=1.000000;
N2, X=2.000100, Y=-7.418269, Z=6.033400, DK=2.298425, W=1.000000;
N3, X=2.000100, Y=-5.631417, Z=3.396245, DK=2.388862, W=1.000000;
N4, X=2.000100, Y=-3.899125, Z=1.811367, DK=2.304729, W=1.000000;
N5, X=2.000100, Y=-1.374083, Z=0.411191, DK=3.908731, W=1.000000;
N6, X=2.000100, Y=0.696544, Z=-0.001405, DK=0.000000, W=1.000000;
N7, X=2.000100, Y=2.000000, Z=0.000000, DK=0.000000, W=1.000000;
END NURBS;
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 245
Chapter 6 - APT-Syntax
6.4.2
SIEMENS MULTAX NURBS
Description
The description of the format for a SIEMENS MULTAX NURBS is as follows:
•
a starting statement
BEGIN NURBS_SIEMENS (D=n, F=feed, AXIS=VAR, LENGTH=length)
where
n
•
=
degree of the NURBS (degree means Order-1)
feed
=
feedrate value used for the NURBS (in model units per minute)
VAR
=
specifies a multax NURBS
length
=
length of the vector
the poles description, with each pole description written on two line
Ni, XT=xt(i), YT=yt(i), ZT=zt(i) $
XH=xh(i), YH=yh(i), ZH=zh(i), DK =dk(i), W=w(i)
where
•
i
=
pole number (from 0 to NumberOfPole-1)
xt, yt, zt
=
lower coordinates of the pole
xh, yh, zh
=
upper coordinates of the pole
dk
=
increment of nodal parameter for the pole
w
=
pole weight
an end statement, which ends the pols list
END NURBS
Example
BEGIN NURBS_SIEMENS (D=3,F=1000.000000,AXIS=VAR,LENGTH=10.000000);
N0,XT=32.387221,YT=4.998636,ZT=44.323820,
$
XH=41.671988,YH=4.998636,ZH=48.037726, DK=0.000000,W=1.0000;
N1,XT=32.793566,YT=5.037345,ZT=43.306033,
$
XH=42.078333,YH=5.037344,ZH=47.019940, DK=0.000000,W=1.0000;
N2,XT=33.505689,YT=4.423307,ZT=41.482876,
$
XH=42.790456,YH=4.423307,ZH=45.196783, DK=3.283413,W=1.0000;
N3,XT=33.946794,YT=2.866154,ZT=40.290832,
$
XH=43.231561,YH=2.866154,ZH=44.004739, DK=2.546939,W=1.0000;
N4,XT=34.061302,YT=2.091235,ZT=39.961529,
$
XH=43.346069,YH=2.091235,ZH=43.675436, DK=0.000000,W=1.0000;
END NURBS;
Page 246
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.5
C_VARDEL
Description
The APT command C_VARDEL is used to delete variables in the variable pool. This command
has no output.
Syntax
C_VARDEL / name
where
name
=
Variable name
Example
APT:
C_VARDEL / DMF_ApproachAngle
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 247
Chapter 6 - APT-Syntax
6.6
C_VARPUT
Description
The APT command C_VARPUT is used to put variables in the variable pool. This command
has no output.
Syntax
C_VARPUT / name,

I4


R8

 STRING





,value
where
name
=
Variable name
I4
=
Variable type is Integer
R8
=
Variable type is Real
STRING
=
Variable type is String
value
=
Variable value
Example
APT:
C_VARPUT / DMF_ApproachAngle, R8, 90
C_VARPUT / DMF_RetractAngle, R8, 80
New pool variables:
DMF_ApproachAngle = 90.0
DMF_RectractAngle = 80.0
Page 248
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.7
CALSUB
Description
The APT command CALSUB can be used to call controller internal and self-defined subprograms.
Self-defined subprograms must be defined in the same APT program with the APT commands
DEFSUB and ENDSUB. They are called with the APT command CALSUB.
Internal subprograms of the controller are called with the minor word EXTERN.
The subprogram number refers to the respective subprogram. In this case a definition with DEFSUB and ENDSUB is not required.
Syntax
CALSUB / n1
CALSUB / n1, n2[, n3 [, n4 [..., n10]]]
CALSUB / EXTERN, n1
CALSUB / EXTERN, n1, n2[, n3 [, n4 [..., n10]]]
where
EXTERN
=
Subprogram as separate NC program
n1
=
Subprogram number
n2
=
Repetition factor
n3...n10
=
Further parameters for
subprogram calls
Example
Structure of an APT including self-defined subprograms:
DEFSUB / 99
MODE / INCR, ON
MODE / INCR, OFF
ENDSUB / 99
CALSUB / 99, 3
FINI
Note:
You can use the variables of the table below in NC Blocks, macros and in execution report macros.
Variable
Type
Description
n1
C_SUB_PROG_ID
Num
Subprogram number
n2
C_SUB_NB_OF_REP
Num
subprogram repetition
n3...n10
C_SUB_CALLING_PAR
N/T
Additional subprogram call parameter
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 249
Chapter 6 - APT-Syntax
6.8
CHNGRG
Description
The APT command CHNGRG is generated by CUT4AXES. If the first parameter is POCKET
or PROFILE, it defines the beginning of a wire contour and all its parameters like registers and
so on. If the first parameter is OFF, it defines the end of a contour. cPost will also calculate the
dummy motion after a CHNGRG/OFF fro the Agie100/123 controller.
Syntax
CHNGRG / OFF




CHNGRG/  POCKET  ,  2X  [, n1, n2, n3,.... ]
 PROFILE 
 4X 
where
POCKET or PROFILE=Type of cut
2X or 4X
= Subprogram number
n1, n2, n3,...
=Additional contour parameters
Example
CHNGRG / POCKET, 2X, -1
GOTO/.....
GOTO/.....
CHNGRG/OFF
GOTO/.....
FINI
Note:
You can use the variables of the table below in macros, in execution report macros and in NC
sequences.
Variable
Type
Description
all arguments
C_CHNGRG_VARGC
Num
Number or variables
all arguments
C_CHNGRG_VARG$[]
Text
All variables as string
all arguments
C_CHNGRG_VARGR[]
Num
All variables as real numbers
OFF
C_CHNGRG_DUM_X_POS
Num
Dummy motion X (Agie 100)
OFF
C_CHNGRG_DUM_Y_POS
Num
Dummy motion Y (Agie 100)
OFF
C_CHNGRG_DUM_Z_POS
Num
Dummy motion Z (Agie 100)
Example for pool variables:
CHNGRG / POCKET, 2X, -1 results in the following pool variables:
Page 250
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
Variable
Type
Value
C_CHNGRG_VARGC
Num
3
C_CHNGRG_VARG$[1]
Text
“POCKET”
C_CHNGRG_VARGR[1]
Num
0.0
C_CHNGRG_VARG$[2]
Text
“2X”
C_CHNGRG_VARGR[2]
Num
2.0
C_CHNGRG_VARG$[3]
Text
“-1”
C_CHNGRG_VARGR[3]
Num
-1.0
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 251
Chapter 6 - APT-Syntax
6.9
CIR2PT
Description
The APT command CIR2PT is generated by FasTRIM to support circle definitions with a via
point. The first GOTO after the CIR2PT defines the viapoint of the circle. The circle endpoint is
defined by the second GOTO. These 3 APT commands are output as the CIR2PT
(BLK_CIRCLE_TWO_POINTS) sequence. The 2 GOTOs have no separat output.
Syntax
CIR2PT
GOTO / x, y, z [, i, j, k]
GOTO / x, y, z [, i, j, k]
Example
CIR2PT/
GOTO / 32.45768, -229.09303, -12.54115,-0.699341, 0.713936, 0.034899
GOTO / 36.95793, -218.68721, -12.56232,-0.999178, 0.020641, 0.034899
You can use the variables of the table below in macros, in execution report macros and in NC
sequences.
Variable
Type
Description
C_AXIS_X_NXT_VIA
Num
ISO X coordinate of the viapoint
C_AXIS_Y_NXT_VIA
Num
ISO Y coordinate of the viapoint
C_AXIS_Z_NXT_VIA
Num
ISO Z coordinate of the viapoint
C_AXIS_A_NXT_VIA
Num
ISO A coordinate of the viapoint
C_AXIS_B_NXT_VIA
Num
ISO B coordinate of the viapoint
C_AXIS_C_NXT_VIA
Num
ISO C coordinate of the viapoint
C_AXIS_X_NXT_POS
Num
ISO Y coordinate of the endpoint
C_AXIS_Y_NXT_POS
Num
ISO Z coordinate of the endpoint
C_AXIS_Z_NXT_POS
Num
ISO X coordinate of the endpoint
C_AXIS_A_NXT_POS
Num
ISO X coordinate of the endpoint
C_AXIS_B_NXT_POS
Num
ISO Y coordinate of the endpoint
C_AXIS_C_NXT_POS
Num
ISO Z coordinate of the endpoint
Page 252
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.10
CLAMP
Description
The APT command CLAMP controls the clamp of a workpiece. CLAMP is used in combination
with BARFED. This APT command is only supported by Post Processors for turning tool machines.
Syntax


CLAMP/  ON 
 OFF 
where
ON
=
Clamp activated
OFF
=
Clamp deactivated
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 253
Chapter 6 - APT-Syntax
6.11
CONIC
Description
The APT command CONIC defines a fixed conic angle of a contour for wire machines. The
command has no separat output. The definition is only put in the variable pool.
Syntax
CONIC / a
CONIC/ OFF
where
a
=
Conic angle
Example
WIRE / THREAD
CONIC/5
CUTCOM/LEFT
CHNGRG/PROFILE,2X,-1
GOTO/ ....
Note:
You can use the variables of the table below in macros, in execution report macros and in NC
sequences.
a
Page 254
Variable
Type
Description
C_CONIC_ANGLE_CUR
Num
Conic angle
C_CONIC_PROG
Num
Conic flag
1: conic is programmed (a defined)
0: no conic is programmed (OFF)
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.12
COOLNT
Description
The minor word ON activates the coolant supply. OFF deactivates the coolant with the corresponding machine command in the NC program. The minor words FLOOD, MIST, THRU and
TAP permit specific activation/deactivation of a particular coolant supply.
Syntax


COOLNT/  ON 
 OFF 
COOLNT/


 FLOOD 
 MIST   ON 


, 
 THRU   OFF 
 TAP 


where
ON
=
Coolant on
OFF
=
Coolant off
FLOOD
=
Flood coolant
MIST
=
Mixed coolant
THRU
=
Internal tool coolant
TAP
=
Tap coolant
Note:
You can use the variables of the table below in macros, in execution report macros and in NC
Blocks.
Variable
Type
Description
C_COOLNT_COM
Text
Current COOLNT command
C_COOLNT_TYPE
Text
Current COOLNT type (APT) for no
type, value=”DEFAULT”
C_COOLNT_STAT
Text
Current COOLNT status (APT): ON or
OFF
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 255
Chapter 6 - APT-Syntax
6.13
CUTCOM
Description
The APT command CUTCOM activates/deactivates the tool compensation. There are the following compensation modes:
- tool length compensation
- tool radius compensation
- tool compensation along a vector normal to the drive surface, in contact with the flank of the
tool
- tool compensation along a vector normal to the part surface, in contact with the end of the tool
The actual registers for length and radius compensation are defined in the LOADTL or REGLTL
command.
If the compensation along a vector, CATIA output more cutting information in the GOTO command which is output by cPost. This is only available with CATIA V5R12 or higher.
6.13.1
Length Compensation:
Syntax
CUTCOM/
 PARX 


 PARY 


 PARZ 


,  POS [ ,lcr ]
NEG


where
lcr
=
length correction register
Syntax
Meaning
CUTCOM / PARX, POS, lcr
Positive X-axis correction with the listed length compensation
register.
CUTCOM / PARY, NEG, lcr
Negative Y-axis correction with the listed length compensation register.
CUTCOM / PARZ, NEG
Negative Z-axis correction. The missing length correction register will be taken from the current LOADTL or the last CUTCOM command.
CUTCOM / PARZ
Positive (default) Z-axis correction. The missing length correction register will be taken from the current LOADTL or the
last CUTCOM command.
Page 256
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.13.2
Radius Compensation:
There is the possibility to output the tip or the profile point from CATIA. For this cPost offers no
contour recalculation.
Syntax
CUTCOM/
 RIGHT 


 LEFT 


 OFF 
Syntax
Meaning
CUTCOM / RIGHT
Switch on cutter compensation right
CUTCOM / LEFT
Switch on cutter compensation left
CUTCOM / OFF
Switch off cutter compensation
Example:
PLANAR_PROFILE (MULTAX OFF):
$$ Start generation of : Profile Contouring.1
FEDRAT/ 1000.0000,MMPM
SPINDL/ 70.0000,RPM,CLW
CUTCOM/LEFT
$$ START CUTCOM PLANAR XP, YP, ZP
GOTO / 100.00000, -115.00000, 10.00000
GOTO / 0.00000, -115.00000, 10.00000
CUTCOM/OFF
$$ END CUTCOM PLANAR XP, YP, ZP
$$ End of generation of : Profile Contouring.1
PLANAR_TIP (MULTAX OFF)
$$ Start generation of : Profile Contouring.1
FEDRAT/ 1000.0000,MMPM
SPINDL/ 70.0000,RPM,CLW
CUTCOM/LEFT
$$ START CUTCOM PLANAR XT, YT, ZT
GOTO / 100.00000, -125.00000, 10.00000
GOTO / 0.00000, -125.00000, 10.00000
CUTCOM/OFF
$$ END CUTCOM PLANAR XT, YT, ZT
$$ End of generation of : Profile Contouring.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 257
Chapter 6 - APT-Syntax
6.13.3
Tool Compensation along a Vector normal to Drive Surface:
There is the possibility to output the tip or the profile point from CATIA. For this cPost offers no
contour recalculation.
Syntax
CUTCOM/
 NORMDS 


OFF


Syntax
Meaning
CUTCOM / NORMDS
Switch on this compensation
CUTCOM / OFF
Switch off this compensation
Example:
NORMDS_TIP (MULTAX ON)
$$ Start generation of : Multi Axis Flank Contouring.1
FEDRAT/ 1000.0000,MMPM
SPINDL/ 70.0000,RPM,CLW
CUTCOM/NORMDS
$$ START CUTCOM NORMDS XT,YT,ZT,I,J,K,P,Q,R
GOTO / 100.00000, -125.00000, 10.00000, 0.000000, 0.000000, 1.000000, $
0.000000, 1.0000000, 0.000000
GOTO / 0.00000, -125.00000, 10.00000 0.000000, 0.000000, 1.000000, $
0.000000, 1.0000000, 0.000000
CUTCOM/OFF
$$ END CUTCOM NORMDS XT,YT,ZT,I,J,K,P,Q,R
$$ End of generation of : Multi Axis Flank Contouring.1
NORMDS_TIP (MULTAX OFF)
$$ Start generation of : Multi Axis Flank Contouring.1
FEDRAT/ 1000.0000,MMPM
SPINDL/ 70.0000,RPM,CLW
CUTCOM/NORMDS
$$ START CUTCOM NORMDS XT,YT,ZT,P,Q,R
GOTO / 100.00000, -125.00000, 10.00000, 0.000000, 1.000000, 0.000000
GOTO / 0.00000, -125.00000, 10.00000, 0.000000, 1.000000, 0.000000
CUTCOM/OFF
$$ END CUTCOM NORMDS XT,YT,ZT,P,Q,R
$$ End of generation of : Multi Axis Flank Contouring.1
Page 258
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.13.4
Tool Compensation along a Vector normal to Part Surface:
There is the possibility to output the tip or the contact point from CATIA.
Syntax
CUTCOM/
 NORMPS 


OFF


Syntax
Meaning
CUTCOM / NORMPS
Switch on this compensation
CUTCOM / OFF
Switch off this compensation
NORMPS_TIP (MULTAX OFF)
CUTCOM/NORMPS
$$ START CUTCOM NORMPS XT,YT,ZT,XC,YC,ZC,XN,YN,ZN
../..
CUTCOM/OFF
$$ END CUTCOM NORMPS XT,YT,ZT,XC,YC,ZC,XN,YN,ZN
NORMPS_TIP (MULTAX ON)
CUTCOM/NORMPS
$$ START CUTCOM NORMPS XT,YT,ZT,I,J,K,XC,YC,ZC,XN,YN,ZN
../..
CUTCOM/OFF
$$ END CUTCOM NORMPS XT,YT,ZT,I,J,K,XC,YC,ZC,XN,YN,ZN
NORMPS_CONTACT (MULTAX OFF)
CUTCOM/NORMPS
$$ START CUTCOM NORMPS XC,YC,ZC,XN,YN,ZN
../..
CUTCOM/OFF
$$ END CUTCOM NORMPS XC,YC,ZC,XN,YN,ZN
NORMPS_CONTACT (MULTAX ON)
CUTCOM/NORMPS
$$ START CUTCOM NORMPS XC,YC,ZC,XN,YN,ZN,I,J,K
../..
CUTCOM/OFF
$$ END CUTCOM NORMPS XC,YC,ZC,XN,YN,ZN,I,J,K
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 259
Chapter 6 - APT-Syntax
6.13.5
General
Note:
You can use the variables of the table below in NC sequences, macros.
Page 260
Variable
Type
Description
C_CUTCOM_VARG$[]
Text
Parameter of actual C_CUTCOM command as text variables
C_CUTCOM_VARGR[]
Num
Parameter of actual C_CUTCOM command as real variables
C_CUTCOM_VARGC
Num
Number of C_CUTCOM_VARG* variables
C_TL_LEN_COMP_COM
Text
Current tool length compensation command
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.14
CUTTER
Description
The APT statement CUTTER stands for the formal description of the tool used. This is employed in the Post Processor if no TOOLNO is programmed.
The values (length measurement) are given in the measurement unit of the machine tool as
default.
6.14.1
Milling and powered tools
Syntax
CUTTER / tld, tlel
CUTTER / tld, tlr, dcc, dct, act, ac, tlel
where
tld
=
Cutter diameter at tip
tlr
=
Cutter radius
dcc
=
Horizontal distance between radius
centre point and centre of cutter
dct
=
Vertical distance between radius
centre point and cutter tip
act
=
Angle of cutter tip
ac
=
Angle of cutter
tlel
=
Length of cutter
ac
tlel
dcc
tlr
dct
act
tld
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 261
Chapter 6 - APT-Syntax
ac
tlel
dcc
tlr
dct
act
tld
General cutter definition and its parameters (positive ac angle)
6.14.2
Turning
Syntax
CUTTER / d
where
d
=
diameter of cutter nose
Note:
You can use the variables of the table below in macros, in execution report macros and in NC
Blocks.
Variable
Type
Description
tld
C_TLNO_DIAMETER
Num
Tool diameter
tlr
C_TLNO_TL_RAD
Num
Tool radius
dcc
C_TLNO_EFFEC_LEN
Num
Tool effective length
Page 262
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.15
CYCLE
Description
The CYCLE statement describes a machine cycle which is executed with all subsequent GOTO
statements. The command CYCLE/ON calls the last machine cycle again. The command CYCLE/OFF ends the cycle. cPost supports the following cycles by default: BORE, BRKCHP,
CSINK, DEEPHL, DRILL, REAM and TAP.
The customer can also define his own cycles. The first parameter of the CYCLE command defines the cycle type. All other parameters are free. But these cycles are not support by the internal cPost time calculation.
Syntax
Drilling, Boring, Taping and countersinking:
CYCLE /









BORE
CSINK
DRILL
REAM
TAP









, tdp, cl
CYCLE /









BORE
CSINK
DRILL
REAM
TAP









, tdp, cl, sdp, dw, zav, fr, ss,  ON 
 OFF 
Deep hole drilling and Drilling with chip breaking:
 BRKCHP 

 DEEPHL 
CYCLE / 
, tdp, cl, pdp, ddp, lcl




CYCLE /  BRKCHP  , tdp, cl, sdp, dw, zav, fr, ss,  ON  , pdp, ddp, lcl
 DEEPHL 
 OFF 
Others:


CYCLE /  ON 
 OFF 
CYCLE/ usertype, user parameter....
where
CSINK
Countersink cycle
DRILL
Drilling cycle
TAP
Tapping
BORE
Boring
REAM
Reaming
DEEPHL
Deep hole drilling
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 263
Chapter 6 - APT-Syntax
BRKCHP
Drilling with chip breaking
OFF
Cycle off
ON
Output of last cycle definition
tdp
=
Total drill depth
cl
=
Safety clearance
sdp
=
Special drill depth of infeed
dw
=
Dwell time
zav
=
Retraction plane
fr
=
Feed rate in mm/min
ss
=
Spindle speed
ON/OFF
=
Coolant on/off
pdp
=
Plunge-in drilling depth (chip breaking, deep hole)
ddp
=
Decrement depth value (chip breaking,deep hole)
lcl
=
Lift-off clearance (chip breaking, deep hole)
Note
A maximum of 35 cycles can be defined. The factor between APT and NC measurement unit
will always be multiplied with the length.
All cycle parameters are available with the pool variables C_VARGR(), C_VARG$() and
C_VARGC.
Example:
CYCLE/ DRILL, 12,5
with
C_VARGC=2
C_VARG$(1)=’12’
C_VARG$(2)=’5’
C_VARGR(1)=12.0
C_VARGR(2)=5.0
Page 264
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.16
DEFPLN
Description
This APT command is used together with SETPLN to define a new frame. This frame can be
defined in the APT file and all following coordiantes are transformed in this new frame. This
command is used to support such features like the CYCLE 19 or G80 on Heidenhain controllers, the G7 on Millplus or the ROT on Siemens 840D.
Syntax
DEFPLN / Zx, Zy, Zz [ , Xx, Xy, Xz [ , Yx, Yy, Yz ] ]
where
Zx
=
X coordinate of new Z axis
Zy
=
Y coordinate of new Z axis
Zz
=
Z coordinate of new Z axis
Xx
=
X coordinate of new X axis
Xy
=
Y coordinate of new X axis
Xz
=
Z coordinate of new X axis
Yx
=
X coordinate of new Y axis
Yy
=
Y coordinate of new Y axis
Yz
=
Z coordinate of new Y axis
Example
APT:
GOTO / 0, 0, 100, 0, 0, 1
DEFPLN / 0, 0.7, 0.7
SETPLN / ON
GOTO / 100, 100, 100, 0, 0.7, 0.7
GOTO / 100, 100, 200, 0, 0.7, 0.7
.....
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 265
Chapter 6 - APT-Syntax
6.17
DEFSUB
Description
The APT command DEFSUB indicates the start of a subprogram to be finished with the APT
command ENDSUB and called with the APT command CALSUB (See CALSUB and ENDSUB
command). The subprogram numbers identify the individual subprograms.
Syntax
DEFSUB / n
where
n
=
Subprogram number
Example
Structure of an APT including self-defined subprograms:
DEFSUB / 99
MODE / INCR, ON
MODE / INCR, OFF
ENDSUB / 99
CALSUB / 99, 3
FINI
Note:
You can use the variables of the table below in macros, in execution report macros and in NC
sequences.
n
Page 266
Variable
Type
Description
C_SUB_PROG_ID
Num
Subprogram number
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.18
DELAY
Description
The APT command DELAY controls the path of the tool. DELAY without minor words effects
exact positioning during subsequent motion, that means the end position is precisely approached. So that the two motion commands can be execute separately. For example to produce a stiffening angle without a corner.
If DELAY is programmed with the minor word ON, exact positioning is activated for all APT lines
until DELAY/OFF.
Syntax
DELAY


DELAY/  ON 
 OFF 
Note:
You can use the variables of the table below in macros, in execution report macros and in NC
sequences.
on/ off
Variable
Type
Description
C_DELAY_ACTIVE
Num
Flag for DELAY (1:active; 0:not active)
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 267
Chapter 6 - APT-Syntax
6.19
DUMP
Description
The APT command DUMP creates a list of all pool variables and values at a certain point of
the APT program and writes this list in the execution report. DUMP is helpful for the development of Post Processor definitions of new machine tools. The developer is now able to check
the value of a certain block variable, he wants to use in a new NC block definition.
Syntax
DUMP
Example
Pool: “TEST”
:
TEXT
: C_APT_PARAM[0] =>CYCLE<
TEXT
: C_APT_PARAM[1] =>DRILL<
TEXT
: C_APT_PARAM[2] =>12<
TEXT
: C_APT_PARAM[3] =>4<
TEXT
: C_APT_PARAM[4] =>0<
TEXT
: C_APT_PARAM[5] =>0<
:
Real
: C_AXIS_X_NXT_APT_POS =5.000000
Real
: C_AXIS_X_NXT_POS =5.000000
:
Integer: C_CONIC_PROG =0
Integer: C_DELAY_ACTIVE =0
:
Text
: C_VARG$[0] =>LOADTL<
Text
: C_VARG$[10]=>12<
!!!
Text
: C_VARG$[11]=>0<
!!!
Text
: C_VARG$[1] =>12<
Text
: C_VARG$[2] =>4<
Text
: C_VARG$[3] =>0<
!!!
Text
: C_VARG$[4] =>0<
!!!
Text
: C_VARG$[5] =>15<
!!!
Text
: C_VARG$[6] =>.1<
!!!
Text
: C_VARG$[7] =>25<
!!!
Text
: C_VARG$[8] =>ON<
!!!
Text
: C_VARG$[9] =>20<
!!!
:
deleted
deleted
deleted
deleted
deleted
deleted
deleted
deleted
deleted
Note:
deleted means not longer available.
Page 268
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.20
DWELL
Description
The APT command DWELL produces a dwell time of n seconds at the output point in the APT/
NC program. If the controller requires the dwell time in a different unit, the dwell time factor must
be defined.
Syntax
DWELL / n
where
n
© CENIT AG Systemhaus
cPost Documentation V1R6
=
Dwell time of n seconds
Page 269
Chapter 6 - APT-Syntax
6.21
END NURBS
Description
The APT command ENDNURBS marks the end of a NURBS definition (see BEGIN NURBS).
Syntax
END NURBS
Page 270
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.22
ENDSUB
Description
The APT command ENDSUB marks the end of a subprogram. The subprogram is identified by
the subprogram number n (see CALSUB and DEFSUB).
Syntax
ENDSUB/n
where
n
=
Subprogram number
Example
Structure of an APT including self-defined subprograms:
DEFSUB / 99
MODE / INCR, ON
MODE / INCR, OFF
ENDSUB / 99
CALSUB / 99, 3
FINI
Note:
You can use the variables of the table below in macros, in execution report macros and in NC
sequences.
n
Variable
Type
Description
C_SUB_PROG_ID
Num
Subprogram number
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 271
Chapter 6 - APT-Syntax
6.23
FEDRAT
Description
The APT statement FEDRAT defines the feed rate for the subsequent tool movements.
The feed rate is converted to the units defined for the machine tool, compared to the limit values
and entered in the NC program. Feed rate commands with a feed rate of 0.0 are ignored.
Syntax
FEDRAT / fr, unit
FEDRAT / MODIFY, fr, unit
where
fr
=
Feed rate
MODIFY
=
Modification of feed rate for exactly
one motion
unit
=
Length measurement unit of the CAD
model (see table below).
Note
This NC information is generally linked to a motion command (GOTO, GODLTA). The following
values may be used to specify the unit:
Value
Meaning
MMPM
Feed rate programmed in mm/min.
MMPR
Feed rate programmed in mm/revolution
IPM
Feed rate programmed in inch/min.
IPR
Feed rate programmed in inch/revolution
The factor between APT and NC measurement unit will always be multiplied with the feedrate
values.
You can use the variables of the table below in NC Blocks, macros and in execution report macros.
Variable
Type
Description
fr
C_FEED_VALUE
Num
feed rate
unit
C_FEED_UNIT
Text
Current feedrate unit (MMPM,
MMPR, IPM, IPR)
C_FEED_UNIT_COM
Text
Current feedrate unit command
Page 272
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.24
FINI
Description
The APT commandAPT command FINI marks the end of the APT program and causes the output of the machine command for the end of the NC program.
Syntax
FINI
Note
If defined, the command for program end and the end block with and without record numbering
will be generated in the NC program.
A FINI is automatically appended, if missing.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 273
Chapter 6 - APT-Syntax
6.25
FROM
Description
The APT command FROM defines a rapid motion from the defined tool loading point to the
starting position.
Syntax
FROM/ x, y, z [, i, j, k]
You can use the variables of the table below in NC Blocks, macros and in execution report macros.
Variable
Type
Description
x
C_AXIS_X_FROM
Num
X-coordinate
y
C_AXIS_Y_FROM
Num
Y-coordinate
z
C_AXIS_Z_FROM
Num
Z-coordinate
i
C_AXIS_TLVEC_X_FROM
Num
Tool vector X-coordinate (MULTAX)
j
C_AXIS_TLVEC_Y_FROM
Num
Tool vector Y-coordinate (MULTAX)
k
C_AXIS_TLVEC_Z_FROM
Num
Tool vector Z-coordinate (MULTAX)
Note
The coordiantes of the FROM command are also used if a GOHOME command without coordinate is programmed (see GOHOME for an example).
The factor between APT and NC measurement unit will always be multiplied with the coordinates.
Page 274
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.26
GODLTA
Description
The APT command GODLTA produces relative linear movement of the tool starting from the
current position by the values X, Y and Z or along the tool axis (Z).
Syntax
GODLTA / x, y, z
GODLTA / z
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 275
Chapter 6 - APT-Syntax
6.27
GOHOME
Description
The APT command GOHOME produces linear movement of the tool from the current position
either to the point defined with the APT command FROM or to the default point given in the
Post Processor. The output coordiantes are indicated with the minor words XAXIS, YAXIS and
ZAXIS. If individual coordinates of this point shall be overwritten for the current retraction movement, these can be stated after the corresponding minor word for the axis.
The factor between APT and NC measurement unit will always be multiplied with the coordinates.
Syntax
GOHOME/ [XAXIS[,x]] [, YAXIS [,y]] [, ZAXIS [,z]]
Example
APT:
FROM / 18, 16, 30
GOHOME / YAXIS
GOHOME / XAXIS, YAXIS, 40, ZAXIS
GOHOME
NC:
N100 G00 Y16
N200 G00 X18 Y40 Z30
N200 G00 X18 Y16 Z30
Page 276
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.28
GOTO
Description
The APT command GOTO produces linear movement of the tool from the current position to
the point with the absolute coordinates X, Y and Z. There is some additional information in
some special modes:
Mode
Additional Information
MULTAX
Tool vector
CUTCOM/NORMDS
Vector normal to drive surface
CUTCOM/NORMPS
Vector normal to part surface and contact point
Syntax
GOTO / x, y, z [, i, j, k]
GOTO / x, y, z, [, i, j, k] [, p, q, r] in CUTCOM/NORMDS mode
GOTO / x, y, z, [, i, j, k] [, xc, yc, zc] [, xn, yn, zn] in CUTCOM/NORMPS mode
where
x, y, z
=
Coordinates of the target point (tip or profile - depends on CATIA V5
i, j, k
=
Components of tool axis vector (only when MULTAX is active)
p, q, r
=
Components of compensation vector normal to drive surface
options)
(only when CUTCOM/NORMDS is active)
xc, yc, zc
=
Contact point (only when CUTCOM/NORMPS is active)
xn, yn, zv
=
Components of compensation vector normal to part surface
(only when CUTCOM/NORMPS is active)
Note:
You can use the variables of the table below in macros, in execution report macros and in NC
Blocks.
Variable
Type
Description
x
C_AXIS_X_NXT_POS
Num
Next position X
y
C_AXIS_Y_NXT_POS
Num
Next position Y
z
C_AXIS_Z_NXT_POS
Num
Next position Z
i
C_AXIS_TLVEC_X_NXT
Num
Next Tool vector in X
j
C_AXIS_TLVEC_Y_NXT
Num
Next Tool vector in Y
k
C_AXIS_TLVEC_Z_NXT
Num
Next Tool vector in Z
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 277
Chapter 6 - APT-Syntax
6.29
IGNORE
Description
APT lines between IGNORE / ON and IGNORE / OFF will be ignored by the Post Processor
and are not output in the NC program.
Syntax


IGNORE /  ON 
 OFF 
Page 278
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.30
INDIRV
Description
The APT command INDIRV causes the tool to move in a circular path around the described
centre point to an end position defined in the LINE statement. The direction of movement at the
start of the circular interpolation is described with a normed vector (vector with the length of 1),
which is tangent to the starting point. The X, Y and Z components of this vector are generated
in the INDIRV statement.
Syntax
Possible circle syntax:
INDIRV / vx, vy, vz
TLON,GOFWD (CIRCLE / xcp, ycp, zcp, $
radius), ON, (LINE / xcp, ycp, zcp, $
xep, yep, zep)
or
INDIRV / vx, vy, vz
TLON,GOFWD (CIRCLE / xcp, ycp, zcp, $
radius), ON, 2,INTOF, $
(LINE / xcp, ycp, zcp, $
xep, yep, zep)
Possible cylndr syntax:
INDIRV / vx, vy, vz
TLON,GOFWD (CYLNDR / xcp, ycp, zcp, $
vtx, vty, vtz, radius), ON, $
(PLANE/PERPTO,$
(PLANE / (POINT / xcp, ycp, zcp), PERPTO, $
(VECTOR / vpx, vpy, vpz)), $
(POINT (xcp, ycp, zcp), $
(POINT / xep, yep, zep))
or
INDIRV / vx, vy, vz
TLON,GOFWD (CYLNDR / xcp, ycp, zcp, $
vtx, vty, vtz, radius), ON,2,INTOF, $
(PLANE/PERPTO,$
(PLANE / (POINT / xcp, ycp, zcp), PERPTO, $
(VECTOR / vpx, vpy, vpz)), $
(POINT (xcp, ycp, zcp), $
(POINT / xep, yep, zep))
where
vx, vy, vz
=
Direction vector components of the
movement
vpx, vpy, vpz =
Direction vector components
perpendicular to plane
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 279
Chapter 6 - APT-Syntax
vtx, vty, vtz
=
Direction vector components of tool
axis
xcp, ycp, zcp =
Centre point components
xep, yep, zep =
End point components
radius
Radius of circular movement of tool tip
=
Example
GOTO /...
INDIRV/.00000, 1.00000,.00000
TLON,GOFWD/ (CIRCLE/.00000, 35.925, 17.05000,$
.07500),ON,(LINE/.00000, 35.92500, 17.05000,$
-.07500, 35.92500, 17.05000)
GOTO...
Page 280
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.31
INSERT
Description
With the INSERT command any instruction can be inserted into the NC program. This APT
command is used to insert NC commands which are not supported by the Post Processor into
the NC program.
Syntax
INSERT / NC line
Note
The syntax is not checked and is transferred analogously to the NC program.
If frequent use is made of this feature, the APT file loses its neutrality concerning the type of
NC machine tool used.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 281
Chapter 6 - APT-Syntax
6.32
LOADTL
Description
This APT command either produces a tool change command in the NC program or selects new
registers for unchanged tool numbers. If the compensation register is omitted or if OFF is entered, the output of the compensation register is suppressed in the NC program.
Syntax
LOADTL / tlno [, OFF [, OFF]]
LOADTL / tlno, NOTE
LOADTL / tlno, lcr [, OFF]
LOADTL / tlno, lcr, NOTE
LOADTL / tlno, lcr, rcr
LOADTL / tlno, lcr, rcr, NOTE
where
tlno
=
Tool number
lcr
=
Length compensation register
rcr
=
Radius compensation register
NOTE
=
PPRINT output following tool call
OFF
=
No output of compensation register
Note:
A LOADTL command causes the CATIA Post Processor to generate the tool change command
sequence from the PP block definition into the NC program.
If a length compensation register has been defined, tool change is automatically followed by
the output of compensation in the tool axis direction.
You can use the variables of the table below in macros, in execution report macros and in NC
sequences.
Variable
Type
Description
tlno
C_TLNO_TL_NUMBER[]
Num
Tool number (TOOLNO)
lcr
C_TL_LEN_COMP_REG
Num
Current tool length compensation register
rcr
C_TL_RAD_COMP_REG
NUM
Current radius compensation register programmed in APT
tlno
C_TL_CUR_TLID
Num
Current tool number
C_TL_PREV_TLID
Num
Previous tool number (LOADTL)
Page 282
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.33
MACH_AXIS
Description
The APT command MACH_AXIS defines a new axis system.
Syntax
MACH_AXIS / id, onb, x_xaxis, y_xaxis, z_xaxis, x_yaxis, y_yaxis, z_yaxis,
x_zaxis, y_zaxis, z_zaxis, x_off, y_off, z_off
where
id
=
Machine axis identifier
onb
=
Origin number
*_xaxis
=
New X axis in old axis system
*_yaxis
=
New Y axis in old axis system
*_zaxis
=
New Z axis in old axis system
*_off
=
Offset vector
Note:
You can use the variables of the table below in macros, in execution report macros and in NC
sequences.
Variable
Type
Description
id
C_AXIS_SYS_ID$
Text
Id of axis system
onb
C_AXIS_SYS__ONR
Num
Origin number
*axis
C_AXIS_SYS_MAT(3)(3)
Num
Transformation matrix
*_off
C_AXIS_SYS_OFF(3)
Num
Offset
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 283
Chapter 6 - APT-Syntax
6.34
MODE
Description
The APT command MODE has the following functions:
• The motion is output incrementally with INCR, ON and in absolute terms with INCR, OFF.
The motion instructions are calculated as absolute values by default.
• The options XYPLAN, ZXPLAN and YZPLAN make it possible to switch between the
machining planes. cPost converts the coordinates according to chosen plane and its
transdefined formation.
• The option AUTO activates or deactivates the automatic XY,ZX or YZ plane generation
(MODE/..PLAN). The tool vector defines the active machining plane.
• The option FRAME activates or deactivates the automatic plane generation (DEFPLN,SETPLN).
• The option CLAMP defines the output of rotation angles. There is the choice between
macro, clamp sequences and normal angle output.
• The option POLAR defines the output of the coordiantes as polar coordiantes.
6.34.1
Absolute / Incremental output
Description
This command is used to choose between absolute and incremental programming.
Syntax


MODE / INCR,  ON 
 OFF 
Example
APT:
GOTO / 100, 100, 200
MODE / INCR, ON
GOTO / 200, 200, 300
MODE / INCR, OFF
GOTO / 300, 300, 400
NC:
N100 G01 X100 Y100 Z200
N110 G01 G91 X100 Y100 Z100
N200 G01 G90 X300 Y300 Z400
Note:
You can use the variables of the table below in macros, in execution report macros and in NC
Blocks.
on/ off
Page 284
Variable
Type
Description
C_INCREMENTAL_ON
Num
Flag for incremental (1) or absolute (2)
measurement
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.34.2
Plane selection
Description
This command is used to define the new machining plane. This is important for the output circles for example. MODE/XYPLAN, 1 means that the XY plane is the new machining plane with
the tool vector (0,0,1). MODE/XYPLAN,2 has the the tool vector (0,0,-1). MODE/ZXPLAN, L is
the special plane for turning operations.
Syntax
MODE / XYPLAN , [
 1 
 
 2 
]
MODE / ZXPLAN , [
 1 


 2 


 L 
]
MODE / YZPLAN , [
 1 
 
 2 
]
Example
APT:
MODE / XYPLAN, 1
GOTO / 100, 100, 200
NC:
N100 G17
N110 G01 X100 Y100 Z200
Note:
You can use the variables of the table below in macros, in execution report macros and in NC
Blocks.
Variable
Type
Description
C_TOOL_AXIS
Num
Current tool axis - infeed flag (XY -> 3,
XY2 -> -3, ...)
C_TOOL_AXIS_SIGN
Num
Sign of current infeed axis direction. In the
XY plane, the infeed axis direction is the
Z-axis. In the YZ plane, the milling head
can machine the workpiece from one side
or the other (YZPLAN, 1 or YZPLAN, 2).
C_MODE_PLANE_COM
Text
Current plane command
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 285
Chapter 6 - APT-Syntax
6.34.3
Automatic plane selection
Description
This command is used to activate (ON) or deactivate (OFF) the automatic plane generation.
This only works in MULTAX mode. cPost checks the tool vector and activates the plane defined
by the tool vector. The following table shows which tool vector actiavtes which plane:
Tool vector
Plane
Inserted commandType
(0,0,1)
XY
MODE / XYPLAN, 1
(0,0,-1)
XY2
MODE / XYPLAN, 2
(0,1,0)
ZX
MODE / ZXPLAN, 1
(0,-1,0)
ZX2
MODE / ZXPLAN, 2
(1,0,0)
YZ
MODE / YZPLAN, 1
(-1,0,0)
YZ2
MODE / YZPLAN, 2
Syntax


MODE / AUTO,  ON 
 OFF 
Example
APT:
GOTO / 0, 0, 100, 0, 0, 1
MODE / AUTO, ON
GOTO / 100, 100, 100, 0, 0, 1
GOTO / 100, 100, 200, 0, 1, 0
.....
internal APT:
GOTO / 0, 0, 100, 0, 0, 1
MODE / AUTO, ON
GOTO / 100, 100, 100, 0, 0, 1
MODE / YZPLAN, 1
GOTO / 100, 100, 200, 0, 1, 0
....
NC:
N100 G01 X0 Y0 Z100
N110 G01 X100 Y100 Z100
N120 G18
N130 G01 X100 Y100 Z200
Page 286
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.34.4
Automatic SETPLN (Frame) selection
Description
This command is used to activate (ON) or deactivate (OFF) the automatic frame generation.
This only works in MULTAX mode. cPost checks the tool vector and inserts at each new tool
vector a redefintion of the frame with the commands SETPLN and DEFPLN. This command is
used to support automaticly the CYCLE 19 or G80 on Heidenhain controllers, the G7 on Millplus controllers and the TRAORI function on Siemens 840D controllers.
Syntax


MODE / FRAME,  ON 
 OFF 
Example
APT:
MODE / FRAME, ON
GOTO / 0, 0, 100, 0, 0, 1
....
GOTO / 100, 100, 100, 0, 0, 1
GOTO / 100, 100, 200, 0, 1, 0
.....
GOTO / 200, 300, 400, 0, 1, 0
GOTO / 100, 200, 300, 0.7, 0.7, 0
....
internal APT:
MODE / FRAME, ON
GOTO / 0, 0, 100, 0, 0, 1
....
GOTO / 100, 100, 100, 0, 0, 1
SETPLN / OFF
DEFPLN / 0, 1, 0
SETPLN / ON
GOTO / 100, 100, 200, 0, 1, 0
.....
GOTO / 200, 300, 400, 0, 1, 0
SETPLN / OFF
DEFPLN / 0.7, 0.7, 0
SETPLN / ON
GOTO / 100, 200, 300, 0.7, 0.7, 0
....
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 287
Chapter 6 - APT-Syntax
6.34.5
Output of rotation angles
Description
This command is used to define the rotation angle output. If ON is active, cPost output a sequence or macro for each rotation angle difference. No angles will be output. If OFF is active,
the angles are output normally.
Syntax


MODE / CLAMP,  ON 
 OFF 
Example
APT:
MODE /CLAMP, ON
GOTO / 0, 0, 100, 0, 0, 1
....
GOTO / 100, 100, 100, 0, 0, 1
GOTO / 100, 100, 200, 0, 1, 0
.....
GOTO / 200, 300, 400, 0, 1, 0
....
internal APT:
MODE / FRAME, ON
GOTO / 0, 0, 100, 0, 0, 1
....
GOTO / 100, 100, 100, 0, 0, 1
OUTPUT/ CLAMP sequences
GOTO / 100, 100, 200, 0, 1, 0
.....
6.34.6
Polar planes
Description
This command is used to support polar coordinates. If this polar mode is active, cPost will transform all XY coordiantes of the defined plane to radius and angle. Linear and circular motions
will be splitted until the defined accuracy is reached. There is the possibility to define an angle
offset to adjust the output to the controller.
Syntax
 XY 


MODE / POLAR,  ZX 


 YZ 
, angle, lin, cir
MODE / POLAR, OFF
where
angle
Page 288
= angle offset
lin
= linear accuracy
cir
= circular accuracy
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
Example
APT:
MODE /POLAR, XY, 0, 0.01, 0.01
GOTO / 0, 0, 100
GOTO / 10, 0, 100
GOTO / 10, 10, 100
GOTO / 10, 10, 200
RAPID
GOTO / 100, 100, 400
NC:
N100 G01 R0 A0 Z100
N110 G01 R10 A0 Z100
N120 G01 R... A... Z100
.... many intermediate points til...
N300 G01 R14.14 A45 Z100
N310 G01 R14.14 A45 Z200
N320 G00 R141.4 A45 Z400
where
A
= angle address
R
= radius address
Note:
The following table shows the naming of the pool variables for this polar mode.
Variable
Type
Polar mode active
Polar mode not active
C_AXIS_X_ADR
Text
Address of radius
Address of 1st coordiante
C_AXIS_Y_ADR
Text
Address of angle
Address of 2nd coordiante
C_AXIS_Z_ADR
Text
Address of tool axis
Address of 3rd coordiante
C_AXIS_X_CUR_POS
Num
Actual radius
actual X position
C_AXIS_Y_CUR_POS
Num
Actual angle
actual Y position
...
...
...
...
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 289
Chapter 6 - APT-Syntax
6.35
MOTION
Description
The APT command MOTION defines “2 contour motions” instead of a GOTO with a tool vector.
This command is automaticly generated by CUT4AXES and only supported by wire machines.
Syntax
Multax OFF mode:
MOTION / LIN, xs, ys, zs, xe, ye, ze
MOTION / CIR, xs, ys, zs, xe, ye, ze, xm, ym, zm, vx, vy, vz
Multax ON mode:
MOTION / LIN, xs, ys, zs, xe, ye, ze, $
LIN, xs2 ys2, zs2, xe2, ye2, ze2
MOTION / LIN, xs, ys, zs, xe, ye, ze, $
CIR, xs2, ys2, zs2, xe2, ye2, ze2, xm2, ym2, zm2, vx2, vy2, vz2
MOTION / CIR, xs, ys, zs, xe, ye, ze, xm, ym, zm, vx, vy, vz, $
LIN, xs2 ys2, zs2, xe2, ye2, ze2
MOTION / CIR, xs, ys, zs, xe, ye, ze, xm, ym, zm, vx, vy, vz, $
CIR, xs2, ys2, zs2, xe2, ye2, ze2, xm2, ym2, zm2, vx2, vy2, vz2
where
Page 290
LIN or CIR
=
Type of motion (LINear or CIRcular)
xs, ys, zs
=
Start point of 1st contour
xe, ye, ze
=
End point of 1st contour
xm, ym, zm
=
Circle center point of 1st contour
vx, vy, vz
=
Tangent vector at circle start point of 1st contour
xs2, ys2, zs2 =
Start point of 2nd contour
xe2, ye2, ze2 =
End point of 2nd contour
xm2, ym2, zm2=
Circle center point of 2nd contour
vx2, vy2, vz2 =
Tangent vector at circle start point of 2nd contour
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.36
OPSKIP
Description
Skippable records which are generated with the appropriate character before the line and with
the level number (if level is defined), are skipped by the NC machine tool. They can be defined
between the APT commands OPSKIP/ON and OPSKIP/OFF.
Syntax


OPSKIP/  ON  [, level]
 OFF 
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 291
Chapter 6 - APT-Syntax
6.37
ORIGIN
Description
The program supports both programmed (G92) and manual (G54, G55,...) NC origin offsets.
The ORIGIN and ORIGIN / MANUAL coordinates are interpreted as CAD measurement unit.
The factor is used to convert the values into NC measurement units.
Coordinates of ORIGIN / DATUM commands are in NC measurement unit.
They are normally programmed by way of the APT command ORIGIN at the point where they
are subsequently to appear in the NC program.
A programmed origin offset (additive) is called with the following APT line:
ORIGIN/DATUM, INCR, 11, 12, 0
The option DATUM activates the additive origin offset. The shift is not calculated by the Post
Processor. The X, Y, Z values determine the order of magnitude of the origin offset. In the case
of the option (INCR), this shift is implemented incrementally, i.e. referenced to the instantaneous active origin. If the shift is implemented without the option (INCR), the shift always refers
in absolute terms to the set workpiece origin.
The following is an example of a manual origin offset call:
ORIGIN/MANUAL, 1, 11, 12, 0
This origin offset can be calculated by the Post Processor. It is necessary if the CAD origin does
not coincide with the manual machine origin.
If the command is used for a second time the repeat of the coordinates is not necessary.
The following table shows how each ORIGIN is managed by cPost..
ORIGIN
Output
subtraction on coordinates
X, Y, Z
no
always on APT
DATUM
yes
never
MANUAL
yes
if defined on APT
NCDATA
no
always on NC
Syntax
ORIGIN / x, y, z
ORIGIN / MANUAL, n [, x, y, z]
ORIGIN / DATUM, [INCR,] x, y, z
ORIGIN / NCDATA, x, y, z
where
Page 292
x
=
Shift in x
y
=
Shift in y
z
=
Shift in z
MANUAL
=
Selection of manual origin
n
=
Number of manual origin offset
DATUM
=
Additive origin offset
INCR
=
Incremental origin offset
NCDATA
=
Origin of NC coordiantes
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
Example for the different Origins:
The table gives an overview of the effects of the ORIGIN.
APT:
NC:
ORIGIN/ 30, 20, 50
GOTO/ 120, 0, -45
G1 X150 Y20 Z5
ORGIN/DATUM, 30, 20, 50
GOTO/ 120, 0, -45
G92 X30 Y20 Z50
G1 X120 Y0 Z-45
ORIGIN/MANUAL, 1, 10, 20, 30
GOTO/ 10, 20, 30
no subtraction:
G54
G1 X10 Y20 Z30
with subtraction:
G54
G1 X0 Y0 Z0
Note:
You can use the variables of the table below in macros, in execution report macros and in NC
sequences.
Variable
Type
Description
x
C_ORIGIN_X_AXIS
Num
Current origin offset in X-direction (ORIGIN / X, Y, Z)
y
C_ORIGIN_Y_AXIS
Num
Current origin offset in Y-direction (ORIGIN / X, Y, Z)
x
C_ORIGIN_Z_AXIS
Num
Current origin offset in Z-direction (ORIGIN / X, Y, Z)
n
C_ORIGIN_MANUAL_NR()
Num
Current origin manual number
x
C_ORIGIN_MAN_X_AXIS()
Num
Origin offset in X-direction (ORIGIN/MANUAL, X, Y, Z)
y
C_ORIGIN_MAN_Y_AXIS()
Num
Origin offset in Y-direction (ORIGIN/MANUAL, X, Y, Z)
z
C_ORIGIN_MAN_Z_AXIS()
Num
Origin offset in Z-direction (ORIGIN/MANUAL, X, Y, Z)
C_ORIGIN_MANUAL_1ST()
Text
All origin manual command (1st part)
C_ORIGIN_MANUAL_2ND()
Text
All origin manual command (2ND part)
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 293
Chapter 6 - APT-Syntax
6.38
OUTPUT
Description
The APT command OUTPUT is used to manage the NC output and to redefine the ISO output
file.
Syntax
OUTPUT /


 ON 
 OFF 


 FLUSH 
 BLANK 


where
ON
=
NC output
OFF
=
no NC output
FLUSH
=
Output of complete output stack
BLANK
=
Output of a empty line in NC

NEW

OUTPUT / ISOFILE, newName,  APPEND 


where
newName
=
new ISO filename
NEW
=
option for create new ISO file
APPEND
=
option for append on existing ISO file
Example
Open a new ISO file named ABC.iso:
OUTPUT / ISOFILE, ABC.iso, NEW
Open an existing ISO file named ABC.iso and append the output:
OUTPUT / ISOFILE, ABC.iso, APPEND
Page 294
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.39
PARTNO
Description
The APT command PARTNO stands for the designation or NC program number of the part to
be manufactured.
The text is inserted with the text variables C_PARTNO_1ST_SEP and C_PARTNO_2ND_SEP
into the program header or into other NC blocks.
These two PARTNO commands may also be further subdivided. The individual parts are to be
separated with $.
Syntax
PARTNO / designation or nc program number
Example
APT command: PARTNO / 66532$220194$MILLER
Pool variables:
C_PARTNO(1) = 66532$220194$MILLER
C_PARTNO_1ST_SEP(1) = 66532
C_PARTNO_1ST_SEP(2) = 220194
C_PARTNO_1ST_SEP(3) = MILLER
You can use the variables of the table below in macros, in execution report macros and in NC
sequences.
Variable
Type
Description
C_PARTNO()
Text
Content of PARTNOs from APT file
C_PARTNO_1ST_SEP
Text
Part strings from first PARTNO separated with $
C_PARTNO_2ND_SEP
Text
Part strings from second PARTNO separated with $
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 295
Chapter 6 - APT-Syntax
6.40
PITCH
Description
The APT command PITCH can be used to program the thread pitch as an alternative to the
THREAD command.
Syntax
PITCH / r1
where
r1
Page 296
=
Thread pitch
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.41
PPRINT
Description
The APT statement PPRINT is used to mark comments in the APT program. The comments
are provided with the appropriate start and end characters and transferred to the NC program.
The number of letters of the comment may be limited by defining a maximum value.
Syntax
PPRINT / comment
Special syntax
For the PPRINT command after TOOLNO /... NOTE the following syntax is valid:
PPRINT / tlid:tldesc:insid:tlmat:tlhold:comment
where
tlid
=
Tool identification
tldesc
=
Tool description
tlinsid
=
Tool holder identification
tlmat
=
Tool material
tlhold
=
Tool holder type
tlcomment
=
Comment
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 297
Chapter 6 - APT-Syntax
6.42
PREFUN
Description
The APT command PREFUN is used to generate extra motion commands. The command
number n and the corresponding address defined in the parameters will be generated.
Syntax
PREFUN/ n
 LAST 


PREFUN/ n,  NOW 


 NEXT 
where
n
=
Numerical block
LAST
=
Output in last NC record
NOW
=
Output as separate NC record
NEXT
=
Output in next NC record
Example
APT:
GOTO/ 100, 200, 300
PREFUN / 17
GOTO/ 200, 300, 400
Option LAST NC output:
G1 G17 X100 Y200 Z300
G1 X200 Y300 Z400
Option NOW NC output:
G1 X100 Y200 Z300
G17
G1 X200 Y300 Z400
Option NEXT NC output:
G1 X100 Y200 Z300
G1 G17 X200 Y300 Z400
Page 298
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.43
RAPID
Description
If the APT command RAPID is output, the next linear motion of the tool (GOTO, GODLTA) is a
rapid motion. If several rapid motion instructions are to be output, each motion instruction must
be programmed with RAPID.
Syntax
RAPID
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 299
Chapter 6 - APT-Syntax
6.44
REGLTL
Description
This APT command is used to select new tool compensation registers for unchanged tool numbers.
Syntax
REGLTL / tlno, lcr, rcr
where
tlno
=
Tool number
lcr
=
Length compensation register
rcr
=
Radius compensation register
Note:
You can use the variables of the table below in macros, in execution report macros and in NC
sequences.
Variable
Type
Description
lcr
C_TL_LEN_COMP_REG
Num
Current tool length compensation register
rcr
C_TL_RAD_COMP_REG
NUM
Current radius compensation register programmed in APT
Page 300
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.45
RETURN
Description
RETURN activates (ON) or deactivates (OFF) the rear side treatment of a movement component.
Syntax


RETURN/  ON 
 OFF 
where
ON
=
Rear side treatment on
OFF
=
Rear side treatment off
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 301
Chapter 6 - APT-Syntax
6.46
REWIND
Description
The APT command REWIND effects repetition of part of a program. The options ON and OFF
are used to mark a program section which can be output at any point in the NC program by way
of the option OUT. The parameter id is used to identify the section of the program to be repeated. The parameter count indicates the number of defined program section repetitions.
Syntax


REWIND/  ON  , id
 OFF 
REWIND/ OUT, id, count
Example
GOTO /...
REWIND / ON, 1
GOTO /...
:
GOTO /...
REWIND / OFF, 1
:
REWIND / OUT, 1, 5
Page 302
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.47
SELCTL
Description
This APT command preselects the tool with the appropriate tool number. This command is not
necessary if the cPost parameter "automatic tool preselection" is active.
Syntax
SELCTL / n
where
n
=
Tool number
Note:
You can use the variables of the table below in macros, in execution report macros and in NC
Blocks.
n
Variable
Type
Description
C_TL_SELECTED_TLID
Num
Selected tool number
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 303
Chapter 6 - APT-Syntax
6.48
SEQNO
Description
The APT command SEQNO causes the record numbering in the NC program to be redefined.
Syntax
SEQNO / n1 [, INCR, n2]
where
n1
=
New record number
n2
=
New increment


SEQNO/  ON 
 OFF 
Note:
You can use the variables of the table below in macros, in execution report macros and in NC
Blocks.
n1
Page 304
Variable
Type
Description
C_REC_NUMBER_INC
Num
Record number increment
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.49
SETANG
Description
The APT command SETANG is used to modify the angle output in MULTAX mode. cPost calculates for each tool vector the possible angles and choose the solution in dependence of its 5
axis parameters and the former angle solution. If cPost must output another solution in some
special cases, the SETANG command must be programmed before this motion. This command has no output. It is only used to set internal angle values for the selection of the next angle solution.
Syntax
SETANG / a, b, c
where
a
=
Angle of 1st axis
b
=
Angle of 2nd axis
c
=
Angle of 3rd axis
Example
APT:
GOTO/100,100,100,0,0,1
SETANG/ , , 75
GOTO/110,100,100,0,0,1
NC:
N100 G1 X100 Y100 Z100 A0 C0
N110 G1 X110 Y100 Z100 A0 C75
cPost calculates the angle solutions A0 C0 for the first GOTO. The tool vector of the second GOTO
is the same but a SETANG is programmed before. The C angle is undefined for the tool vector
(0,0,1), so cPost takes the old value. Because this is set to 75 by the SETANG command, cPost will
output C75 instead of C0.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 305
Chapter 6 - APT-Syntax
6.50
SETPLN
Description
This APT command is used to define new frames in MULTAX mode. SETPLN / ON activates
the transformation in a new frame and SETPLN / OFF deactivates it. The new frame is defined
by the tool vector or a programmed DEFPLN. All coordiantes between the SETPLN commands
are transformed in the new frame. There is no angle output if SETPLN is active.
cPost offers the possibility to generate SETPLN commands automaticly. This is defined by the
MODE / FRAME command.
This command is used to support such features like the CYCLE 19 or G80 on Heidenhain controllers, the G7 on Millplus or the TRAORI on Siemens 840D.
Syntax
 ON 

 OFF 
SETPLN / 
Example
APT:
GOTO / -51.00000,-10.00000,-30.00000,-1.000000,0.000000,0.000000
DEFPLN / -0.556670,0.500000,0.663414
SETPLN / ON
PPRINT / OPERATION NAME : Drilling.3
SPINDL / 70.0000,RPM,CLW
RAPID
GOTO / -38.95683,32.94096,1.27131,-0.556670,0.500000,0.663414
FEDRAT / 300.0000,MMPM
GOTO / -33.39013,27.94096,-5.36283,-0.556670,0.500000,0.663414
CYCLE / DRILL,10.000000,10.000000,....
GOTO / -32.83346,27.44096,-6.02625,-0.556670,0.500000,0.663414
CYCLE / OFF
FEDRAT / 1000.0000,MMPM
GOTO / -38.95683,32.94096,1.27131,-0.556670,0.500000,0.663414
ISO:
62 L Y-10 Z+51 F1000
63 ; (*** New Frame ***)
64 M9
65 M5
66 CYCL DEF 19.0 BEARBEITUNGSEBENE
67 CYCL DEF 19.1 A+0 B+0
68 CYCL DEF 19.0 BEARBEITUNGSEBENE
69 CYCL DEF 19.1
70 Z+1065.38 R0 F MAX M91
71 Y-360 R0 F MAX M91
72 B-40 R0 F MAX
73 A-30 R0 F MAX
74 CYCL DEF 19.0 BEARBEITUNGSEBENE
75 CYCL DEF 19.1 A-30 B-40
76 FN 17: SYSWRITE ID420 NR0 IDX0 = +0
77 FN 17: SYSWRITE ID210 NR7 = -1
78 ; (OPERATION NAME : Drilling.3)
Page 306
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
79 TOOL CALL S70
80 M3
81 L X-29.025 Y+15.52 Z+39 F MAX
82 L Z+29 F300
83 CYCL DEF 201 REIBEN ~
Q200=1 ;SICHERHEITS-ABST. ~
Q201=-10 ;TIEFE ~
..........
84 L X-29.025 Y+15.52 R0 F MAX
85 CYCL CALL
86 L Z+39 F1000
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 307
Chapter 6 - APT-Syntax
6.51
SPINDL
Description
The APT command SPINDL defines either the spindle speed (qualifier RPM) or the constant
cutting rate (minor word SFM) and the direction of rotation of the machining spindle. It is also
used to deactivate the spindle.
If the spindle is activated, either the option CLW for clockwise rotation or CCLW for counterclockwise rotation of the spindle must be programmed with the spindle speed. CLW is defaul,
so in case of clockwise rotation this minor word hast not to be programmed.
The command SPINDL/ON activates the spindle again. The spindle speed applied is the one
last programmed with the APT command SPINDL/ss, RPM. The direction of rotation is likewise
assumed from this command.
The qualifier RANGE is used to choose a specific transmission n of the machine tool.
If the spindle speed is to be limited for machining at constant cutting rate, the permissible maximum spindle speed ssm must be programmed with the minor word MAXRPM.
Syntax


SPINDL/  ON 
 OFF 


 
SPINDL/ ss,  RPM  ,  CLW 
 SFM   CCLW 
SPINDL/ RANGE, n
SPINDL/ ssm, MAXRPM
where
ss
=
Spindle speed value
ssm
=
Maximum spindle speed value
n
=
Transmission
Note:
You can use the variables of the table below in macros, in execution report macros and in NC
Blocks.
Variable
Type
Description
ss
C_SPINDL_SPEED
Num
Current spindl speed
rpm/ sfm
C_SPINDL_UNIT
Num
Spindle speed unit programmed in APT
(1: RPM, 2: SFM = constant cutting
speed)
C_SPINDL_UNIT_COM
Text
Current spindle speed unit command +
D127
C_SPINDL_WAY
Text
Current spindle direction of rotation
C_SPINDL_WAY_COM
Text
Current spindle direction of rotation command
clw/ cclw/ off
Page 308
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.52
STOP
Description
The APT command STOP causes the output of a program stop command (for example programmed stop M0). Previously all information and commands saved in the stack (program internal memory to buffer the output) are output; the stack will be empty consequently.
Syntax
STOP
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 309
Chapter 6 - APT-Syntax
6.53
SWITCH
Description
This APT command is only supported by Post Processors for turning tool machines.
The APT command SWITCH defines a new reference point for the current tool and changes
consequently the referred point of the edge position. The statements are active up to the next
LOADTL or SWITCH command.
At first the specified parameters will be updated and afterwards a definable block will be generated by the Post Processor. The APT commands which have originally defined these parameters are listed in the brackets.
Note
After using the APT command SWITCH the modality of the motion should be cancelled.
The default length measurement unit is the machine tool length measurement unit, but it may
switched to the CAD length measurement unit.
Syntax
SWITCH / lcr, quadrant, INCR, glx, glz, npr
where
lcr
=
Length correction register
(from LOADTL command)
quadrant
=
Quadrant (from TOOLNO command)
glx
=
Gauge length in X
(from TOOLNO command)
glz
=
Gauge length in Z
npr
=
Nose point radius
(from TOOLNO command)
(from TOOLNO command)
Tool
mounting
point
glz
glx
glx
glz
Tool length compensation
Page 310
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
Note:
You can use the variables of the table below in macros, in execution report macros and in NC
Blocks.
Variable
Type
Description
quadrant
C_TLNO_QUADRAT[]
Num
Tool quadrant (TOOLNO)
glx
C_TLNO_GAUGE_LEN_X[]
Num
Tool gauge length in X (TOOLNO)
gly
C_TLNO_GAUGE_LEN_Y []
Num
Tool gauge length in Y (TOOLNO)
npr
C_TLNO_TIP_RADIUS
Num
Tool tip radius (TOOLNO)
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 311
Chapter 6 - APT-Syntax
6.54
THREAD
Description
The APT command THREAD results in output of the thread cutting command for turning and
facing rates.
The thread pitch r1 can either be indicated in the THREAD command or separately in the
PITCH command. The length measurement unit for r1 is the CAD measurement unit. If you
want to convert it to the NC measurement unit use the parameter described in “Conversion
Factor for Linear Measurements” in the parameter definition.
NOMORE is used to switch off the THREAD command.
Syntax


THREAD/  TURN  [,r1]
 FACE 
THREAD/NOMORE
where
r1
Page 312
=
Pitch of thread
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.55
TLAXIS
Description
The APT command TLAXIS describes the working plane by the vector perpendicular to this
plane (i.e. tool axis vector). The plane command according to the first TLAXIS command before
the first motion command may be accessed by the NC block variable PLANE in the NC block
processed at the start of the program (no automatic generation of this plane command). The
plane command for every working plane can be defined in the Post Processor parameters. After the first motion command the TLAXIS command processes the NC block of the according
plane command into the NC program.
Syntax
TLAXIS / vx, vy, vz
Example
TLAXIS/
0.00000,
0.00000,
1.00000
•The tool axis vector is the Z axis.
•This command is equivalent with MODE / XYPLAN
•The NC block for MODE / XYPLAN is processed
Note:
You can use the variables of the table below in macros, in execution report macros and in NC
Blocks.
Variable
Type
Description
vx
C_TOOL_AXIS_X_AXIS
Num
Current tool axis in X direction (APT)
vy
C_TOOL_AXIS_Y_AXIS
Num
Current tool axis in Y direction (APT)
vz
C_TOOL_AXIS_Z_AXIS
Num
Current tool axis in Z direction (APT)
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 313
Chapter 6 - APT-Syntax
6.56
TOOLNO
6.56.1
Milling
Description
The APT command TOOLNO replaces the APT command CUTTER and stands for the description of the tool used. As opposed to the CUTTER command, this APT command additionally
includes process data and a description of the periphery.
Syntax
TOOLNO / tlno, operation, d [,OPTION, n1 [,... [,n10]]] [, NOTE]
TOOLNO/ tlno, operation, d, fr, ss [,OPTION, n1 [,... [,n10]]] [, NOTE]
TOOLNO/ tlno, operation, d, a, sd, el, pl, fr, fu, ss, su, rt [,OPTION, n1 [,... [,n10]]]
[, NOTE]
TOOLNO / tlno, operation, d, r, a, sd, el, pl, fl, nt, fr, fu, ss, su, rt, cool, tc, t [,OPTION, n1 [,... [,n10]]] [, NOTE]
TOOLNO / tlno, d, r, a, sd, el, pl, fl, nt, t [,OPTION, n1 [,... [,n10]]] [, NOTE]
TOOLNO / tlno, d, operation, r, a, sd, el, pl, fl, nt, t [,OPTION, n1 [,... [,n10]]] [,
NOTE]
where
tlno
=
Tool number
operation
=
Type of tool operation (DRILL, MILL,
d
=
Tool diameter
r
=
Tool radius
a
=
Tool tip angle
TURN, BORE)
sd
=
Setting distance
el
=
Effective tool length
pl
=
Pilot length
fl
=
Flute length
nt
=
Number of teeth
fr
=
Feed rate
fu
=
Unit of feed rate (MMPM, MMPR,
IPM, IPR)
ss
=
Spindle speed
su
=
Unit of speed (RPM,SFM)
rt
=
Direction of rotation (CLW, CCLW,
OFF)
cool
=
Coolant (ON, OFF, THRU, TAP,
FLOOD, MIST)
tc
=
Tool change (AUTO, MANUAL, LOW,
MEDIUM, LARGE)
t
Page 314
=
Tool life time
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
OPTION, n1...n10
NOTE
=
Additional information
=
Output of corresponding PPRINT in
next line. (See special syntax for the
PPRINT command)
sd
Tool
mounting
point
fl
d
a
el
Tool length compensation
6.56.2
Turning
Description
The APT command TOOLNO replaces the APT command CUTTER and stands for the description of the tool used. As opposed to the CUTTER command, this APT command additionally
includes process data and a description of the periphery.
The Post Processor recognizes the type of machining from the type of tool (2nd parameter),
i.e., if the command SPINDL defines the spindle speed of the tool (powered) or of the workpiece (fixed). The following chart shows how each type of tool is processed by the Post Processor.
Type of tool
Option n1
Treatment type
MILL
independent
powered
DRILL
unequal 1
powered
1
fixed
TURN
independent
fixed
BORE
independent
fixed
The Post Processor outputs the corresponding block in case of a change of the treatment type
when the tool type is changed.
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 315
Chapter 6 - APT-Syntax
Syntax for lathe tools
TOOLNO / tlno, operation, station, tmp, quadrant, npr [,OPTION, n1 [,... [,n10]]]
[, NOTE]
TOOLNO / tlno, operation, station, tmp, quadrant, npr, fr, fu, ss, su, rt, cool, t
[,OPTION, n1 [,... [,n10]]] [, NOTE]
TOOLNO / tlno, operation, station, tmp, quadrant, npr, glx, glz, fr, fu, ss, su, rt,
cool, t [,OPTION, n1 [,... [,n10]]] [, NOTE]
TOOLNO / tlno, operation, quadrant, npr, glx, glz, t, [,OPTION, n1 [,... [,n10]]] [,
NOTE]
where
tlno
=
Tool number
operation
=
Type of tool operation (TURN, BORE)
station
=
Turret station
tmp
=
Tool mounting point
quadrant
=
Quadrant number of tool tip
npr
=
Nose point radius
glx
=
Tool length in X
glz
=
Tool length in Z
fr
=
Feed rate
fu
=
Unit of feed rate (MMPM, MMPR,
IPM, IPR)
ss
=
Spindle speed
su
=
Unit of spindle speed (RPM, SFM)
rt
=
Direction of rotation (CLW, CCLW,
OFF)
cool
=
Coolant (ON, OFF, THRU, FLOOD,
t
=
Tool life time
MIST, TAP)
OPTION, n1...=
Additional information
NOTE
Output of corresponding PPRINT in
=
next line
(See special syntax for the PPRINT
command)
Page 316
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
Syntax for powered tools
TOOLNO / tlno, operation, station, tmp, d [,OPTION, n1 [,... [,n10]]] [, NOTE]
TOOLNO / tlno, operation, station, tmp, d, fr, fu, ss, su, rt, cool, t [,OPTION, n1
[,... [,n10]]] [, NOTE]
TOOLNO / tlno, operation, station, tmp, d, glx, gly, glz, a, el, pl, fl, fr, fu, ss, su,
rt, cool, t [,OPTION, n1 [,... [,n10]]] [, NOTE]
where
tlno
=
Tool number
operation
=
Type of tool operation (MILL, DRILL)
station
=
Turret station
tmp
=
Tool mounting point
d
=
Tool diameter
glx
=
Tool length in X
gly
=
Tool length in Y
glz
=
Tool length in Z
a
=
Tool tip angle
el
=
Effective tool length
pl
=
Pilot length
fl
=
Flute length
fr
=
Feed rate
fu
=
Unit of feed rate (MMPM, MMPR,
IPM, IPR)
ss
=
Spindle speed
su
=
Unit of spindle speed (RPM, SFM)
rt
=
Direction of rotation (CLW, CCLW,
OFF)
cool
=
Coolant (ON, OFF, THRU, FLOOD,
MIST, TAP)
t
=
Tool life time
OPTION, n1.. =
Additional information
NOTE
Output of corresponding PPRINT in
=
next line
(See special syntax for the PPRINT
command
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 317
Chapter 6 - APT-Syntax
Note:
You can use the variables of the table below in macros, in execution report macros and in NC
Blocks.
Variable
Type
Description
tlno
C_TLNO_TL_NUMBER()
Num
Tool number (TOOLNO)
operation
C_TOLNO_OPER_TYPE()
Text
Tool operation type (TOOLNO)
station
C_TLNO_STATION_NB()
Num
Tool station number (TOOLNO)
tmp
C_TLNO_MOUNTING_PT()
Num
Tool mounting point (TOOLNO)
quadrant
C_TLNO_QUADRAT()
Num
Tool quadrant (TOOLNO)
npr
C_TLNO_TL_RAD()
Num
Tool radius (TOOLNO)
d
C_TLNO_DIAMETER()
Num
Tool diameter (TOOLNO)
r
C_TLNO_TIP_RADIUS()
Num
Tool tip radius (TOOLNO)
glx
C_TLNO_GAUGE_LEN_X()
Num
Tool gauge length in X (TOOLNO)
gly
C_TLNO_GAUGE_LEN_Y()
Num
Tool gauge length in Y (TOOLNO)
glz
C_TLNO_GAUGE_LEN_Z()
Num
Tool gauge length in Z (TOOLNO)
a
C_TLNO_TIP_ANGLE()
Num
Tool tip angle (TOOLNO)
sd
C_TLNO_SETTING_DIS()
Num
Tool setting distance (TOOLNO)
el
C_TLNO_EFFEC_LEN()
Num
Tool effective length (TOOLNO)
pl
C_TLNO_PILOT_LEN()
Num
Tool pilot length (TOOLNO)
fl
C_TLNO_FLUTE_LEN()
Num
Tool flute length (TOOLNO)
nt
C_TLNO_NB_OF_TIPS()
Num
Number of tool tips (TOOLNO)
fr
C_TLNO_FEED_VALUE()
Num
Tool feed rate (TOOLNO)
fu
C_TLNO_FEED_UNIT()
Num
Tool feed unit (TOOLNO)
ss
C_TLNO_SPINDL_SPEED()
Num
Tool speed (TOOLNO)
su
C_TLNO_SPINDL_UNIT()
Text
Unit of tool speed (TOOLNO)
rt
C_TLNO_SPINDL_WAY()
Text
Tool direction of rotation (TOOLNO)
cool
C_TLNO_COOLNT()
Text
Tool coolant (TOOLNO)
tc
C_TLNO_TL_CHANGE()
Text
Tool change (TOOLNO)
t
C_TLNO_TL_LIFETIME()
Num
Tool life time (TOOLNO)
tlno
C_TLNO_TLID()
Text
Tool identification number (TOOLNO)
PPRINT after NOTE
C_TLNO_DESCRIP()
Text
Tool description (TOOLNO)
PPRINT after NOTE
C_TLNO_INSERT_ID()
Text
Tool insert identification (TOOLNO)
PPRINT after NOTE
C_TLNO_MATERIAL()
Text
Tool material type (TOOLNO)
PPRINT after NOTE
C_TLNO_HOLDER_TYPE()
Text
Tool holder type (TOOLNO)
PPRINT after NOTE
C_TLNO_COMMENT()
Text
Tool comment (TOOLNO)
Page 318
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 6 - APT-Syntax
6.57
TPRINT
Description
The statement TPRINT is used to mark comments following TOOLNO statement in the APT
program.
Syntax
TPRINT / tlid, tldesc, tlhold
where
tlid
=
Tool identification
tldesc
=
Tool desciption
tlhold
=
Tool holder type
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 319
Chapter 6 - APT-Syntax
6.58
WIRE
Description
The APT command WIRE defines the state of the wire. It can be cut or threaded. This command is only supported by wire machines.
Syntax

CUT 

 THREAD 
WIRE / 
where
CUT
=
Wire is cut
OFF
=
Wire is threaded
Example
WIRE / THREAD
CHNGRG / POCKET, 2X, -1
GOTO/.....
GOTO/.....
CHNGRG/OFF
WIRE/CUT
GOTO/.....
FINI
Page 320
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 7 - APPENDIX
7
APPENDIX
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 321
Chapter 7 - APPENDIX
7.1
Pool Variables
The following numerical and alphanumeric variables can be used in the sequences and the
macros. Variables with brackets (VAR()) are index variables. If you want to get the current value of an index variable, this variable must be accessed with an added _C.
List of Variables
Text
=
Num
=
Variable contains text information
Variable contains numerical values
Variable
Type
Description
C_ACTUAL_DATE$
Text
Actual date
C_ACTUAL_TIME
Num
Actual NC working time in seconds
C_ADD_TIME_CUTTING
Num
Cutting time for actual NC sequence (could be set in
sequences to be added to time calculation)
C_ADD_TIME_NOT_CUTTING
Num
Non cutting time for actual NC sequence(could be set in
sequences to be added to time calculation)
C_APT_COMMAND
Text
Current APT command
C_ANGLE_OPT_A_AXIS
Num
Optimal A axis angle, which is impossible
(STR_MULTAX_ANGLE_BEST_NOT_POSS)
C_ANGLE_OPT_B_AXIS
Num
Optimal B axis angle, which is impossible
(STR_MULTAX_ANGLE_BEST_NOT_POSS)
C_ANGLE_OPT_C_AXIS
Num
Optimal C axis angle, which is impossible
(STR_MULTAX_ANGLE_BEST_NOT_POSS)
C_ANGLE_POSS_A_AXIS
Num
Possible A axis angle, which is not optimal
(STR_MULTAX_ANGLE_BEST_NOT_POSS)
C_ANGLE_POSS_B_AXIS
Num
Possible B axis angle, which is not optimal
(STR_MULTAX_ANGLE_BEST_NOT_POSS)
C_ANGLE_POSS_C_AXIS
Num
Possible C axis angle, which is not optimal
(STR_MULTAX_ANGLE_BEST_NOT_POSS)
C_APT_NAME
Text
Actual APT filename
C_APT_PARAM()
Text
Parameter of APT command
C_APT_PATH
Text
Actual APT directory
C_APTLINE$
Text
Actual complete APT line
C_AXIS_A_ADR
Text
Address character of the machine tool axis rotating
around the CAD X-axis
C_AXIS_A_CUR_POS
Num
Actual position of the machine tool axis rotating around
the CAD X-axis
C_AXIS_A_MAX_DELTA
Num
Maximum A distance moved (delta)
C_AXIS_A_MAX_DELTA_REC
Num
ISO record number maximum delta A is reached
C_AXIS_A_MAXIMUM
Num
Maximum A distance moved
Page 322
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 7 - APPENDIX
Variable
Type
Description
C_AXIS_A_MAXIMUM_REC
Num
ISO record number maximum A is reached
C_AXIS_A_MINIMUM
Num
Minimum A distance moved
C_AXIS_A_MINIMUM_REC
Num
ISO record number minimum A is reached
C_AXIS_A_NXT_POS
Num
Next value of the machine tool axis rotating around the
CAD X-axis
C_AXIS_B_ADR
Text
Address character of the machine tool axis rotating
around the CAD Y-axis
C_AXIS_B_CUR_POS
Num
Actual position of the machine tool axis rotating around
the CAD Y-axis
C_AXIS_B_MAX_DELTA
Num
Maximum B distance moved (delta)
C_AXIS_B_MAX_DELTA_REC
Num
ISO record number maximum delta B is reached
C_AXIS_B_MAXIMUM
Num
Maximum B distance moved
C_AXIS_B_MAXIMUM_REC
Num
ISO record number maximum B is reached
C_AXIS_B_MINIMUM
Num
Minimum B distance moved
C_AXIS_B_MINIMUM_REC
Num
ISO record number minimum B is reached
C_AXIS_B_NXT_POS
Num
Next value of the machine tool axis rotating around the
CAD Y-axis
C_AXIS_C_ADR
Text
Address character of the machine tool axis rotating
around the CAD Z-axis
C_AXIS_C_CUR_POS
Num
Actual position of the machine tool axis rotating around
the CAD Z-axis
C_AXIS_C_MAX_DELTA
Num
Maximum C distance moved (delta)
C_AXIS_C_MAX_DELTA_REC
Num
ISO record number maximum delta C is reached
C_AXIS_C_MAXIMUM
Num
Maximum C distance moved
C_AXIS_C_MAXIMUM_REC
Num
ISO record number maximum C is reached
C_AXIS_C_MINIMUM
Num
Minimum C distance moved
C_AXIS_C_MINIMUM_REC
Num
ISO record number minimum C is reached
C_AXIS_C_NXT_POS
Num
Next value of the machine tool axis rotating around the
CAD Z-axis
C_AXIS_EULER_1_CUR_POS
Num
Actual 1st euler angle
C_AXIS_EULER_2_CUR_POS
Num
Actual 2nd euler angle
C_AXIS_EULER_3_CUR_POS
Num
Actual 3rd euler angle
C_AXIS_EULER_1_NXT_POS
Num
Next 1st euler angle
C_AXIS_EULER_2_NXT_POS
Num
Next 2nd euler angle
C_AXIS_EULER_3_NXT_POS
Num
Next 3rd euler angle
C_AXIS_TLVEC_X_CUR
Num
Actual tool vector in X
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 323
Chapter 7 - APPENDIX
Variable
Type
Description
C_AXIS_SYS_ID$
Text
Actual machine axis system identifier
C_AXIS_SYS_ONR
Num
Actual machine axis system origin number
C_AXIS_SYS_MAT(3)(3)
Num
Actual machine axis system transformation matrix
C_AXIS_SYS_OFF(3)
Num
Actual machine axis system offset vector
C_AXIS_TLVEC_X_FROM
Num
Tool vector X Coordinate of FROM command
C_AXIS_TLVEC_X_NXT
Num
Next tool vector in X
C_AXIS_TLVEC_Y_CUR
Num
Actual tool vector in Y
C_AXIS_TLVEC_Y_FROM
Num
Tool vector Y Coordinate of FROM command
C_AXIS_TLVEC_Y_NXT
Num
Next tool vector in Y
C_AXIS_TLVEC_Z_CUR
Num
Actual tool vector in Z
C_AXIS_TLVEC_Z_FROM
Num
Tool vector Z Coordinate of FROM command
C_AXIS_TLVEC_Z_NXT
Num
Next tool vector in Z
C_AXIS_UX_CUR_APT_POS
Num
Actual upper APT position of X axis, if MOTION command contains 2 contours
C_AXIS_UX_CUR_MP
Num
Actual upper position of circle center (X), if MOTION
command contains 2 contours
C_AXIS_UX_CUR_POS
Num
Actual upper ISO position of X axis, if MOTION command contains 2 contours
C_AXIS_UX_NXT_APT_POS
Num
Next upper APT position of X axis, if MOTION command
contains 2 contours
C_AXIS_UX_NXT_MP
Num
Next upper position of circle center (X), if MOTION
command contains 2 contours
C_AXIS_UX_NXT_POS
Num
Next upper ISO position of X axis, if MOTION command
contains 2 contours
C_AXIS_UY_CUR_APT_POS
Num
Actual upper APT position of Y axis, if MOTION command contains 2 contours
C_AXIS_UY_CUR_MP
Num
Actual upper position of circle center (Y), if MOTION
command contains 2 contours
C_AXIS_UY_CUR_POS
Num
Actual upper ISO position of Y axis, if MOTION command contains 2 contours
C_AXIS_UY_NXT_APT_POS
Num
Next upper APT position of Y axis, if MOTION command
contains 2 contours
C_AXIS_UY_NXT_MP
Num
Next upper position of circle center (Y), if MOTION
command contains 2 contours
C_AXIS_UY_NXT_POS
Num
Next upper ISO position of Y axis, if MOTION command
contains 2 contours
C_AXIS_UZ_CUR_APT_POS
Num
Actual upper APT position of Z axis, if MOTION command contains 2 contours
Page 324
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 7 - APPENDIX
Variable
Type
Description
C_AXIS_UZ_CUR_MP
Num
Actual upper position of circle center (Z), if MOTION
command contains 2 contours
C_AXIS_UZ_CUR_POS
Num
Next upper ISO position of Z axis, if MOTION command
contains 2 contours
C_AXIS_UZ_NXT_APT_POS
Num
Next upper APT position of Z axis, if MOTION command
contains 2 contours
C_AXIS_UZ_NXT_MP
Num
Nextl upper position of circle center (Z), if MOTION
command contains 2 contours
C_AXIS_UZ_NXT_POS
Num
Next upper ISO position of Z axis, if MOTION command
contains 2 contours
C_AXIS_X_ADR
Text
Address letter of 1st main axis of plane
C_AXIS_X_CUR_APT_POS
Num
Actual APT position of X axis
C_AXIS_X_CUR_MP
Num
Actual position of circle center of 1st linear axis(X)
C_AXIS_X_CUR_POS
Num
Current actual position X
Last position of 1st coordinate axis (coordinate X in normal plane XY). With most control units, the coordinates
are converted in the controller; in this case, X1 is always
the X-coordinate; if not, it is the coordinate calculated in
line with the assignment.
C_AXIS_X_CUR_VIA
Num
Actual position of via point of 1st linear axis (X)
C_AXIS_X_FROM
Num
X-coordinate of FROM command
C_AXIS_X_MAX_DELTA
Num
Maximum X distance moved (delta)
C_AXIS_X_MAX_DELTA_REC
Num
ISO record number maximum delta X is reached
C_AXIS_X_MAXIMUM
Num
Maximum X distance moved
C_AXIS_X_MAXIMUM_REC
Num
ISO record number maximum X is reached
C_AXIS_X_MINIMUM
Num
Minimum X distance moved
C_AXIS_X_MINIMUM_REC
Num
ISO record number minimum X is reached
C_AXIS_X_NXT_APT_POS
Num
Next APT position of X-axis
C_AXIS_X_NXT_MP
Num
Next position of circle center of 1st linear axis (X)
C_AXIS_X_NXT_POS
Num
Next position X
Position of 1st coordinate axis defined in first GOTO
after cycle call. Here again the following applies: If the
current working plane is the XY plane, X2 is equal to the
X-coordinate; for controls which convert the coordinates
internally the X-coordinate is always X2.
C_AXIS_X_NXT_VIA
Num
Next position of via point of 1st linear axis (X)
C_AXIS_X_TIP_MAXIMUM
Num
Maximum X (Tip point)
C_AXIS_X_TIP_MAXIMUM_R
EC
Num
ISO record number maximum X (Tip) is reached
C_AXIS_X_TIP_MINIMUM
Num
Minimum X (Tip point)
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 325
Chapter 7 - APPENDIX
Variable
Type
Description
C_AXIS_X_TIP_MINIMUM_RE
C
Num
ISO record number minimum X (Tip) is reached
C_AXIS_Y_ADR
Text
Address letter of 2nd main axis of plane
C_AXIS_Y_CUR_APT_POS
Num
Actual APT position of Y axis
C_AXIS_Y_CUR_MP
Num
Actual position of circle center of 2nd linear axis(Y)
C_AXIS_Y_CUR_POS
Num
Current actual position of Y axis
C_AXIS_Y_CUR_VIA
Num
Actual position of via point of 2nd linear axis (Y)
C_AXIS_Y_FROM
Num
Y-coordinate of FROM command
C_AXIS_Y_MAX_DELTA
Num
Maximum Y distance moved (delta)
C_AXIS_Y_MAX_DELTA_REC
Num
ISO record number maximum delta Y is reached
C_AXIS_Y_MAXIMUM
Num
Maximum Y distance moved
C_AXIS_Y_MAXIMUM_REC
Num
ISO record number maximum Y is reached
C_AXIS_Y_MINIMUM
Num
Minimum Y distance moved
C_AXIS_Y_MINIMUM_REC
Num
ISO record number minimum Y is reached
C_AXIS_Y_NXT_APT_POS
Num
Next APT position of Y-axis
C_AXIS_Y_NXT_MP
Num
Next position of circle center of 2nd linear axis (Y)
C_AXIS_Y_NXT_POS
Num
Next position Y
C_AXIS_Y_NXT_VIA
Num
Next position of via point of 2nd linear axis (Y)
C_AXIS_Y_TIP_MAXIMUM
Num
Maximum Y (Tip point)
C_AXIS_Y_TIP_MAXIMUM_R
EC
Num
ISO record number maximum Y (Tip) is reached
C_AXIS_Y_TIP_MINIMUM
Num
Minimum Y (Tip point)
C_AXIS_Y_TIP_MINIMUM_RE
C
Num
ISO record number minimum Y (Tip) is reached
C_AXIS_Z_ADR
Text
Address letter of 3rd main axis of plane
C_AXIS_Z_CUR_APT_POS
Num
Actual APT position of Z axis
C_AXIS_Z_CUR_MP
Num
Actual position of circle center of 3rd linear axis(Z)
C_AXIS_Z_CUR_POS
Num
Current actual position of Zaxis
C_AXIS_Z_CUR_VIA
Num
Actual position of via point of 3rd linear axis (Z)
C_AXIS_Z_FROM
Num
Z-coordinate of FROM command
C_AXIS_Z_MAX_DELTA
Num
Maximum Z distance moved (delta)
C_AXIS_Z_MAX_DELTA_REC
Num
ISO record number maximum delta Z is reached
C_AXIS_Z_MAXIMUM
Num
Maximum Z distance moved
C_AXIS_Z_MAXIMUM_REC
Num
ISO record number maximum Z is reached
C_AXIS_Z_MINIMUM
Num
Minimum Z distance moved
Page 326
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 7 - APPENDIX
Variable
Type
Description
C_AXIS_Z_MINIMUM_REC
Num
ISO record number minimum Z is reached
C_AXIS_Z_NXT_APT_POS
Num
Next APT position of Z-axis
C_AXIS_Z_NXT_MP
Num
Next position of circle center of 3rd linear axis (Z)
C_AXIS_Z_NXT_POS
Num
Next position of Z-axis
C_AXIS_Z_NXT_VIA
Num
Next position of via point of 3rd linear axis (Z)
C_AXIS_Z_TIP_MAXIMUM
Num
Maximum Z (Tip point)
C_AXIS_Z_TIP_MAXIMUM_R
EC
Num
ISO record number maximum Z (Tip) is reached
C_AXIS_Z_TIP_MINIMUM
Num
Minimum Z (Tip point)
C_AXIS_Z_TIP_MINIMUM_RE
C
Num
ISO record number minimum Z (Tip) is reached
C_COOLNT_COM
Text
Current COOLNT command
C_COOLNT_STAT
Text
Current COOLNT status (APT): ON or OFF
C_COOLNT_TYPE
Text
Current COOLNT type (APT) for no type,
value=”DEFAULT”
C_CPOST_PPINFO_CREAT$
Text
Creator of actual parameterfile
C_CPOST_PPINFO_DATE$
Text
Date of actual parameterfile
C_CPOST_PPINFO_LIC$
Text
License type of actual parameterfile
C_CPOST_PPINFO_VERS$
Text
Version of actual parameterfile
C_CPOST_VERSION$
Text
actual cPost version (Binary)
C_CUR_CIRCLE_RADIUS
Num
Actual circle radius
C_CUR_UCIRCLE_RADIUS
Num
Actual upper circle radius, if MOTION command contains 2 contours
C_CUR_MOTION_COM$
Text
Actual motion command (e.g. “G01”)
C_CUR_UMOTION_COM$
Text
Actual upper motion command (e.g. “G01”), if MOTION
command contains 2 contours
C_CUTCOM_VARG$()
Text
Parameter of actual C_CUTCOM command as text variables
C_CUTCOM_VARGC
Num
Number of C_CUTCOM_VARG* variables
C_CUTCOM_VARGR()
Num
Parameter of actual C_CUTCOM command as real variables
C_DELAY_ACTIVE
Num
Flag for DELAY (1:active; 0:not active)
C_FEED_UNIT
Text
Current feedrate unit (MMPM, MMPR, IPM, IPR)
C_FEED_UNIT_COM
Text
Current feedrate unit command
C_FEED_VALUE
Num
Currently applied feed rate from last FEDRAT command
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 327
Chapter 7 - APPENDIX
Variable
Type
Description
C_FIRST_PPRINTS()
Text
Individual PPRINT commands prior to first motion/FROM
command
C_GLOBAL_FACTOR
Num
Factor to convert APT measurement unit into NC measurement unit (mm -> inch)
C_INCREMENTAL_ON
Num
Flag for incremental (1) or absolute (0) measurement
C_INTERNAL_SUBNAME
Text
Name of subprogramm
C_ISO_NAME
Text
Actual ISO filename
C_ISO_PATH
Text
Actual ISO directory
C_MACHINE_NAME
Text
Name of machine tool
C_MACHING_TYPE
Text
Contains machining type (’MILL’ or ’LATHE’)
C_MODE_PLANE_COM
Text
Current plane command
C_NB_OF_ISO_LINES
Num
Amount of generated NC lines
C_NURB_DEG
Num
Degree of the current NURB
C_NURB_1ST_PT_MO_TYPE
Num
Type of the suppressed motion before NURB (0:RAPID,
1 Linear)
C_NURB_DK
Num
Increment of nodal parameter of the pole of the current
NURB
C_NURB_FEED
Num
Programmed feed of the current NURB
C_NURB_FIXED_AXIS_X
Num
X value of tool vector of NURB with fixed axis
C_NURB_FIXED_AXIS_Y
Num
Y value of tool vector of NURB with fixed axis
C_NURB_FIXED_AXIS_Z
Num
Z value of tool vector of NURB with fixed axis
C_NURB_POLE_WEIGHT
Num
Weight of the current pole of the current NURB
C_NURB_POLE_X_AXIS_T
Num
X coordinate of the current pole (tip) of the current NURB
C_NURB_POLE_X_AXIS_H
Num
X coordinate of the current pole (high) of the current
NURB
C_NURB_POLE_Y_AXIS_T
Num
Y coordinate of the current pole (tip) of the current NURB
C_NURB_POLE_Y_AXIS_H
Num
Y coordinate of the current pole (high) of the current
NURB
C_NURB_POLE_Z_AXIS_T
Num
Z coordinate of the current pole (tip) of the current NURB
C_NURB_POLE_Z_AXIS_H
Num
Z coordinate of the current pole (high) of the current
NURB
C_NXT_CIRCLE_RADIUS
Num
Next circle radius
C_NXT_UCIRCLE_RADIUS
Num
Next upper circle radius, if MOTION command contains
2 contours
C_NXT_MOTION_COM$
Text
Next motion command (e.g. “G01”)
Page 328
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 7 - APPENDIX
Variable
Type
Description
C_NXT_UMOTION_COM$
Text
Next upper motion command (e.g. “G01”), if MOTION
command contains 2 contours
C_OS$
Text
Operating System (AIX, HPUX, SUNOS, IRIX, WIN)
C_ORIGIN_MAN_X_AXIS()
Num
Origin offset in X-direction (ORIGIN/MANUAL, X, Y, Z)
C_ORIGIN_MAN_Y_AXIS()
Num
Origin offset in Y-direction (ORIGIN/MANUAL, X, Y, Z)
C_ORIGIN_MAN_Z_AXIS()
Num
Origin offset in Z-direction (ORIGIN/MANUAL, X, Y, Z)
C_ORIGIN_MANUAL_1ST
Text
All origin manual command (1st part)
C_ORIGIN_MANUAL_2ND
Text
All origin manual command (2ND part)
C_ORIGIN_MANUAL_NR
Num
Current origin manual number
C_ORIGIN_X_AXIS
Num
Current origin offset in X-direction (ORIGIN / X, Y, Z)
C_ORIGIN_Y_AXIS
Num
Current origin offset in Y-direction (ORIGIN / X, Y, Z)
C_ORIGIN_Z_AXIS
Num
Current origin offset in Z-direction (ORIGIN / X, Y, Z)
C_PARTNO()
Text
Content of first PARTNO from APT file
C_PARTNO_1ST_SEP
Text
Part strings from PARTNOs separated with $
C_PARTNO_2ND_SEP
Text
Part strings from second PARTNO separated with $
C_PP_NAME
Text
Actual postprocessor name
C_PP_PATH
Text
Actual postprocessor directory
C_RAPID
Num
Flag of current motion (1: RAPID, 0: Linear)
C_RAPID_NXT
Num
Flag of next motion (1: RAPID, 0: Linear)
C_REC_NUMBER_INC
Num
Record number increment
C_RECORD_NUMBER
Num
Next record number
C_REP_NAME
Text
Actual report filename
C_REP_PATH
Text
Acutal report directory
C_SAFETY_Z_AXIS
Num
Coordinate of retraction plane
C_SETPLN_A_AXIS
Num
SETPLN: 1st rotation axis value
C_SETPLN_B_AXIS
Num
SETPLN: 2nd rotation axis value
C_SETPLN_C_AXIS
Num
SETPLN: 3rd rotation axis value
C_SETPLN_X_AXIS_X
Num
SETPLN: new X axis of SETPLN coordinate system in
old axis system
C_SETPLN_X_AXIS_Y
Num
SETPLN: new Y axis of SETPLN coordinate system in
old axis system
C_SETPLN_X_AXIS_Z
Num
SETPLN: new Z axis of SETPLN coordinate system in
old axis system
C_SPINDL_MAXRPM
Num
Current maximum spindle speed
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 329
Chapter 7 - APPENDIX
Variable
Type
Description
C_SPINDL_RANGE_COM
Text
Current spindle range command
C_SPINDL_SPEED
Num
Current spindl speed
C_SPINDL_UNIT
Num
Spindle speed unit programmed in APT (1: RPM, 2: SFM
= constant cutting speed)
C_SPINDL_UNIT_COM
Text
Current spindle speed unit command + D127
C_SPINDL_WAY
Text
Current spindle direction of rotation
C_SPINDL_WAY_COM
Text
Current spindle direction of rotation command
C_STARTFILE_VAR
Text
Content of startfile (pprun -x -i startfile)
C_SUB_CALLING_PAR()
N/T
Additional subprogram call parameters
C_SUB_NB_OF_REP
Num
Subprogram repetition (CALSUB)
C_SUB_PROG_ID
Num
Subprogram number (DEFSUB)
C_SUB_PROG_ID
Num
Subprogram number (ENDSUB)
C_SUB_PROG_ID
Num
Subprogram number
C_SYNC_B_NUMBER
Num
Number of current synchronization stop form APT
C_SYNC_O_NUMBER
Num
Number of current one-sided synchronization stop
C_SYNC_SLIDE_FLG
Num
Flag indicating if slide participates at synchro stop (1/0)
C_TAXIS_X_CUR_APT_POS
Num
Actual Tool vector X axis
C_TAXIS_X_NXT_APT_POS
Num
Next Tool vector X axis
C_TC_CUTTING_TIME()
Num
Cutting time for each tool (Time calculation)
C_TC_CUTTING_WAY()
Num
Cutting way for each tool
C_TC_NON_CUTTING_TIME()
Num
Non cutting time for each tool (Time calculation)
C_TC_NON_CUTTING_WAY()
Num
Non cutting way for each tool
C_TC_TLNO()
Num
Tool Id (Time calculation)
C_TC_TOOL_NB
Num
Number of Tools (Time calculation)
C_TL_CUR_TLID
Num
Current tool number
C_TL_LEN_COMP_COM
Text
Current tool length compensation command
C_TL_LEN_COMP_REG
Num
Current tool length compensation register
C_TL_NB_OF_CHANGES
Num
Number of tool changes (LOADTL’s) in APT
C_TL_NB_OF_TOOLS
Num
Number of different tools (TOOLNO’s) in APT
C_TL_PREV_TLID
Num
Previous tool number (LOADTL)
C_TL_RAD_COMP_REG
NUM
Current radius compensation register programmed in
APT
C_TL_SELECTED_TLID
Num
Selected tool number
C_TLNO_COMMENT()
Text
Tool comment (TOOLNO)
Page 330
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 7 - APPENDIX
Variable
Type
Description
C_TLNO_COOLNT()
Text
Tool coolant (TOOLNO)
C_TLNO_DESCRIP()
Text
Tool description (TOOLNO)
C_TLNO_DIAMETER()
Num
Tool diameter (CUTTER)
C_TLNO_DIAMETER()
Num
Tool diameter (TOOLNO)
C_TLNO_EFFEC_LEN()
Num
Tool effective length (CUTCOM)
C_TLNO_EFFEC_LEN()
Num
Tool effective length (TOOLNO)
C_TLNO_FEED_UNIT()
Num
Tool feed unit (TOOLNO)
C_TLNO_FEED_VALUE()
Num
Tool feed rate (TOOLNO)
C_TLNO_FLUTE_LEN()
Num
Tool flute length (TOOLNO)
C_TLNO_GAUGE_LEN_X()
Num
Tool gauge length in X (SWITCH)
C_TLNO_GAUGE_LEN_X()
Num
Tool gauge length in X (TOOLNO)
C_TLNO_GAUGE_LEN_Y()
Num
Tool gauge length in Y (SWITCH)
C_TLNO_GAUGE_LEN_Y()
Num
Tool gauge length in Y (TOOLNO)
C_TLNO_GAUGE_LEN_Z()
Num
Tool gauge length in Z (TOOLNO)
C_TLNO_HOLDER_TYPE()
Text
Tool holder type (TOOLNO)
C_TLNO_INSERT_ID()
Text
Tool insert identification (TOOLNO)
C_TLNO_MATERIAL()
Text
Tool material type (TOOLNO)
C_TLNO_MOUNTING_PT()
Num
Tool mounting point (TOOLNO)
C_TLNO_NB_OF_TIPS()
Num
Number of tool tips (TOOLNO)
C_TLNO_NOTE()
Text
Tool note (TOOLNO)
C_TOLNO_OPER_TYPE()
Text
Tool operation type (TOOLNO)
C_TLNO_OPTION()
Text
Tool option (TOOLNO)
C_TLNO_OPTION_1()
Text
Tool option N1 (TOOLNO)
C_TLNO_OPTION_2()
Text
Tool option N2 (TOOLNO)
C_TLNO_OPTION_3()
Text
Tool option N3 (TOOLNO)
C_TLNO_OPTION_4()
Text
Tool option N4 (TOOLNO)
C_TLNO_OPTION_5()
Text
Tool option N5 (TOOLNO)
C_TLNO_PILOT_LEN()
Num
Tool pilot length (TOOLNO)
C_TLNO_QUADRAT()
Num
Tool quadrant (SWITCH)
C_TLNO_QUADRAT()
Num
Tool quadrant (TOOLNO)
C_TLNO_SETTING_DIS()
Num
Tool setting distance (TOOLNO)
C_TLNO_SPINDL_SPEED()
Num
Tool speed (TOOLNO)
C_TLNO_SPINDL_UNIT()
Text
Unit of tool speed (TOOLNO)
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 331
Chapter 7 - APPENDIX
Variable
Type
Description
C_TLNO_SPINDL_WAY()
Text
Tool direction of rotation (TOOLNO)
C_TLNO_STATION_NB()
Num
Tool station number (TOOLNO)
C_TLNO_TIP_ANGLE()
Num
Tool tip angle (TOOLNO)
C_TLNO_TIP_RADIUS()
Num
Tool corner radius (TOOLNO)
C_TLNO_TL_CHANGE()
Text
Tool change (TOOLNO)
C_TLNO_TL_LIFETIME()
Num
Tool life time (TOOLNO)
C_TLNO_TL_NUMBER()
Num
Tool number (LOADTL)
C_TLNO_TL_NUMBER()
Num
Tool number (TOOLNO)
C_TLNO_TL_RAD()
Num
Tool radius (CUTCOM)
C_TLNO_TL_RAD()
Num
Tool radius (TOOLNO)
C_TLNO_TLID()
Text
Tool identification number (TOOLNO)
C_TOOL_AXIS
Num
Current tool axis - infeed flag (XY -> 3, XY2 -> -31, ...)
C_TOOL_AXIS_SIGN
Num
Sign of current infeed axis direction. In the XY plane, the
infeed axis direction is the Z-axis. In the YZ plane, the
milling head can machine the workpiece from one side or
the other (YZPLAN, 1 or YZPLAN, 2). TAXSF becomes
negative in YZPLAN, 2.
C_TOOL_AXIS_X_AXIS
Num
Current tool axis in X direction (APT)
C_TOOL_AXIS_Y_AXIS
Num
Current tool axis in Y direction (APT)
C_TOOL_AXIS_Z_AXIS
Num
Current tool axis in Z direction (APT)
C_TOOL_COMMENT
Text
Comment associated with the current tool
C_TOOL_ORDER
Num
Consecutive tool numbers
C_TURRET_ID
Num
Current slide number from TURRET command
C_TURRET_NAME
Text
Name of current turret
C_USERID$
Num
Userid
C_VARGC
Num
Dimension of C_VARGR() and C_VARG$() array
C_VARGR()
Num
Call parameter of actual cycle or macro
C_VARG$()
Text
Call parameter of actual cycle or macro
Page 332
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 7 - APPENDIX
7.2
cPost Objects
The following table shows the connection of APT commands with the internal cPost objects.
The primary and secondary obejct types are needed for the CF_GETNXTCO,
CF_GETPTYPE$ and CF_GETSTYPE$ macro functions.
7.2.1
Sorted by APT command
APT command
Primary Type
Secondary Type
any unknown command
PTYP_ELSE
NO_TYPE
ANGTWO
PTYP_ANGTWO
NO_TYPE
AUXFUN
PTYP_EXTFUN
STYP_AUXFUN
BARFED
PTYP_BARFED
NO_TYPE
BEGIN NURBS
PTYP_NURBS
STYP_NURBS_START
C_VARDEL
PTYP_C_VARPUT
STYP_C_VARDEL
C_VARPUT
PTYP_C_VARPUT
STYP_C_VARPUT
CALSUB
PTYP_CALSUB
NO_TYPE
CHNGRG/OFF
PTYP_CHNGRG
STYP_CHNGRG_OFF_POST
CHNGRG/PROFILE
CHNGRG/POCKET
PTYP_CHNGRG
STYP_CHNGRG_POST
CLAMP
PTYP_CLAMP
NO_TYPE
CIR2PT
PTYP_CIR2PT
STYP_CIR2PT_PRE
COOLNT/ON
COOLNT/OFF
PTYP_COOLNT
STYP_CNORMAL
COOLNT/THRU,ON
COOLNT/THRU,OFF
PTYP_COOLNT
STYP_CTHRU
COOLNT/TAP,ON
COOLNT/TAP,OFF
PTYP_COOLNT
STYP_COOLTAP
COOLNT/FLOOD,ON
COOLNT/FLOOD,OFF
PTYP_COOLNT
STYP_CFLOOD
COOLNT/MIST,ON
COOLNT/MIST,OFF
PTYP_COOLNT
STYP_CMIST
CUTCOM
PTYP_CUTCOM
NO_TYPE
CUTTER
PTYP_CUTTER
NO_TYPE
CYCLE/BORE
PTYP_CYCLE
STYP_CBORE
CYCLE/BRKCHP
PTYP_CYCLE
STYP_CBRKCHP
CYCLE/CSINK
PTYP_CYCLE
STYP_CCSINK
CYCLE/DEEPHL
PTYP_CYCLE
STYP_CDEEPHL
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 333
Chapter 7 - APPENDIX
APT command
Primary Type
Secondary Type
CYCLE/DRILL
PTYP_CYCLE
STYP_CDRILL
CYCLE/OFF
PTYP_CYCLE
STYP_CYCOFF
CYCLE/ON
PTYP_CYCLE
STYP_CYCON
CYCLE/REAM
PTYP_CYCLE
STYP_CREAM
CYCLE/TAP
PTYP_CYCLE
STYP_CTAP
CYCLE/any other
PTYP_CYCLE
STYP_COTHER
DEFPLN
PTYP_SETPLN
STYP_DEFPLN
DEFSUB
PTYP_SUBPRG
STYP_DEFSUB
DELAY
PTYP_DELAY
NO_TYPE
DOF_GOTO (no RAPID before)
PTYP_COORD
STYP_DOF_GOTO
DOF_GOTO (RAPID before)
PTYP_COORD
STYP_DOF_RAPID
DUMP
PTYP_DEBUG
NO_TYPE
DWELL
PTYP_DWELL
NO_TYPE
END NURBS
PTYP_NURBS
STYP_NURBS_END
ENDSUB
PTYP_SUBPRG
STYP_ENDSUB
FEDRAT
PTYP_FEDRAT
STYP_FNORMAL
FEDRAT/INVERS,OFF
PTYP_FEDRAT
STYP_FINVOFF
FEDRAT/INVERS,ON
PTYP_FEDRAT
STYP_FINVON
FEDRAT/MODIFY
PTYP_FEDRAT
STYP_FMODIFY
FEDRAT/MULTAX
PTYP_FEDRAT
STYP_FMULTAX
FINI
PTYP_FINI
NO_TYPE
FROM
PTYP_COORD
STYP_FROM
GODLTA (no RAPID before)
PTYP_COORD
STYP_GODLTA
GODLTA (RAPID before)
PTYP_COORD
STYP_RAPDLTA
GOHOME
PTYP_COORD
STYP_GOHOME
GOTO (no RAPID before)
PTYP_COORD
STYP_GOTO
GOTO (RAPID before)
PTYP_COORD
STYP_RAPID
GOTO (CIR2PT before)
PTYP_COORD
STYP_CIR2PT_VIA
(1st point after CIR2PT)
GOTO (CIR2PT before)
PTYP_COORD
STYP_CIR2PT_NXT
(2nd point after CIR2PT)
HEIGHT
PTYP_HEIGHT
NO_TYPE
INDIRV (->TLON)
PTYP_ELSE
NO_TYPE
INSERT
PTYP_INSERT
NO_TYPE
Page 334
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 7 - APPENDIX
APT command
Primary Type
Secondary Type
LOADTL (same tool number)
PTYP_REGLTL
NO_TYPE
LOADTL
PTYP_LOADTL
STYP_LTLPRE
LOADTL/POST
PTYP_LOADTL
STYP_LTLPOST
MACH_AXIS
PTYP_MACHAXIS
NO_TYPE
MIKFUN
PTYP_MIKFUN
STYP_MIKFUN_ID
MIKFUN/OFF
MIKFUN/ON
MIKFUN/NC
MIKFUN/DOF
MIKFUN/SAVE
PTYP_MIKFUN
STYP_MIKFUN_TYP
MODE/INCR
PTYP_B_MODE
NO_TYPE
MODE/*PLAN
MODE/POLAR
PTYP_P_MODE
NO_TYPE
MODE/AUTO
MODE/FRAME
MODE/CLAMP
MODE/EULER
MODE/MULTAX
PTYP_M_MODE
NO_TYPE
MOTION/LIN (no RAPID before)
PTYP_COORD
STYP_GOTO
MOTION/LIN (RAPID before)
PTYP_COORD
STYP_RAPID
MOTION/CIR
PTYP_COORD
STYP_CIRCLE
N... (between BEGIN NURBS
and END NURBS)
PTYP_COORD
STYP_NURBS
OPSKIP
PTYP_OPSKIP
NO_TYPE
ORIGIN/X,Y,Z
PTYP_ORIGIN
STYP_ORINULL
ORIGIN/NCDATA
PTYP_ORIGIN
STYP_ORINC
ORIGIN/DATUM
PTYP_ORIGIN
STYP_ORIDAT
ORIGIN/MANUAL
PTYP_ORIGIN
STYP_ORIMAN
OUTPUT
PTYP_OUTPUT
NO_TYPE
PARTNO
PTYP_PARTNO
NO_TYPE
PITCH
PTYP_PITCH
NO_TYPE
PREFUN
PTYP_EXTFUN
STYP_PREFUN
RAPID
PTYP_ELSE
NO_TYPE
REGLTL
PTYP_REGLTL
NO_TYPE
RETURN
PTYP_RETURN
NO_TYPE
REWIND/OFF
PTYP_REWIND
STYP_REWOFF
REWIND/ON
PTYP_REWIND
STYP_REWON
REWIND/OUT
PTYP_REWIND
STYP_REWOUT
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 335
Chapter 7 - APPENDIX
APT command
Primary Type
Secondary Type
SAFETY
PTYP_SAFETY
NO_TYPE
SELCTL
PTYP_SELCTL
STYP_SLTNOR
SELCTL/
.AUTOMATIC_PRE_SEL
PTYP_SELCTL
STYP_SLTAUT
SEQNO
PTYP_SEQNO
NO_TYPE
SETANG
PTYP_COORD
STYP_SETANG
SETPLN
PTYP_SETPLN
STYP_SETPLN
SPINDL/LOCK
PTYP_SPINDL
STYP_SPLOCK
SPINDL/MAXRPM
PTYP_SPINDL
STYP_MAXRPM
SPINDL/RANGE
PTYP_SPINDL
STYP_SRANGE
SPINDL
PTYP_SPINDL
STYP_SNORMAL
STOP
PTYP_STOP
NO_TYPE
SWITCH
PTYP_SWITCH
NO_TYPE
THREAD
PTYP_THREAD
NO_TYPE
TLAXIS
PTYP_TLAXIS
NO_TYPE
TLON
PTYP_COORD
STYP_CIRCLE
TOOLNO
PTYP_TOOLNO
STYP_TLMILL
TOOLNO/...BORE....
PTYP_TOOLNO
STYP_TLBORE
TOOLNO/...DRILL....
PTYP_TOOLNO
STYP_TLDRILL
TOOLNO/...MILL....
PTYP_TOOLNO
STYP_TLMILL
TOOLNO/...TURN...
PTYP_TOOLNO
STYP_TLTURN
WIRE
PTYP_WIRE
NO_TYPE
Page 336
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 7 - APPENDIX
7.2.2
Sorted by Objects
Primary Type
Secondary Type
APT command
PTYP_ANGTWO
NO_TYPE
ANGTWO
PTYP_B_MODE
NO_TYPE
MODE/INCR
PTYP_BARFED
NO_TYPE
BARFED
PTYP_C_VARPUT
STYP_C_VARDEL
C_VARDEL
PTYP_C_VARPUT
STYP_C_VARPUT
C_VARPUT
PTYP_CALSUB
NO_TYPE
CALSUB
PTYP_CHNGRG
STYP_CHNGRG_OFF_POS
T
CHNGRG/OFF
PTYP_CHNGRG
STYP_CHNGRG_POST
CHNGRG/PROFILE
CHNGRG/POCKET
PTYP_CIR2PT
STYP_CIR2PT_PRE
CIR2PT
PTYP_CLAMP
NO_TYPE
CLAMP
PTYP_COOLNT
STYP_CFLOOD
COOLNT/FLOOD,ON
COOLNT/FLOOD,OFF
PTYP_COOLNT
STYP_CMIST
COOLNT/MIST,ON
COOLNT/MIST,OFF
PTYP_COOLNT
STYP_CNORMAL
COOLNT/ON
COOLNT/OFF
PTYP_COOLNT
STYP_COOLTAP
COOLNT/TAP,ON
COOLNT/TAP,OFF
PTYP_COOLNT
STYP_CTHRU
COOLNT/THRU,ON
COOLNT/THRU,OFF
PTYP_COORD
STYP_CIR2PT_NXT
(2nd point after CIR2PT)
GOTO (CIR2PT before)
PTYP_COORD
STYP_CIR2PT_VIA
(1st point after CIR2PT)
GOTO (CIR2PT before)
PTYP_COORD
STYP_CIRCLE
MOTION/CIR
PTYP_COORD
STYP_CIRCLE
TLON
PTYP_COORD
STYP_DOF_GOTO
DOF_GOTO (no RAPID
before)
PTYP_COORD
STYP_DOF_RAPID
DOF_GOTO (RAPID before)
PTYP_COORD
STYP_FROM
FROM
PTYP_COORD
STYP_GODLTA
GODLTA (no RAPID before)
PTYP_COORD
STYP_GOHOME
GOHOME
PTYP_COORD
STYP_GOTO
GOTO (no RAPID before)
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 337
Chapter 7 - APPENDIX
Primary Type
Secondary Type
APT command
PTYP_COORD
STYP_GOTO
MOTION/LIN (no RAPID
before)
PTYP_COORD
STYP_NURBS
N... (between BEGIN
NURBS and END NURBS)
PTYP_COORD
STYP_RAPDLTA
GODLTA (RAPID before)
PTYP_COORD
STYP_RAPID
GOTO (RAPID before)
PTYP_COORD
STYP_RAPID
MOTION/LIN (RAPID before)
PTYP_COORD
STYP_SETANG
SETANG
PTYP_CUTCOM
NO_TYPE
CUTCOM
PTYP_CUTTER
NO_TYPE
CUTTER
PTYP_CYCLE
STYP_CBORE
CYCLE/BORE
PTYP_CYCLE
STYP_CBRKCHP
CYCLE/BRKCHP
PTYP_CYCLE
STYP_CCSINK
CYCLE/CSINK
PTYP_CYCLE
STYP_CDEEPHL
CYCLE/DEEPHL
PTYP_CYCLE
STYP_CDRILL
CYCLE/DRILL
PTYP_CYCLE
STYP_COTHER
CYCLE/any other
PTYP_CYCLE
STYP_CREAM
CYCLE/REAM
PTYP_CYCLE
STYP_CTAP
CYCLE/TAP
PTYP_CYCLE
STYP_CYCOFF
CYCLE/OFF
PTYP_CYCLE
STYP_CYCON
CYCLE/ON
PTYP_DEBUG
NO_TYPE
DUMP
PTYP_DELAY
NO_TYPE
DELAY
PTYP_DWELL
NO_TYPE
DWELL
PTYP_ELSE
NO_TYPE
any unknown command
PTYP_ELSE
NO_TYPE
INDIRV (->TLON)
PTYP_ELSE
NO_TYPE
RAPID
PTYP_EXTFUN
STYP_AUXFUN
AUXFUN
PTYP_EXTFUN
STYP_PREFUN
PREFUN
PTYP_FEDRAT
STYP_FINVOFF
FEDRAT/INVERS,OFF
PTYP_FEDRAT
STYP_FINVON
FEDRAT/INVERS,ON
PTYP_FEDRAT
STYP_FMODIFY
FEDRAT/MODIFY
PTYP_FEDRAT
STYP_FMULTAX
FEDRAT/MULTAX
PTYP_FEDRAT
STYP_FNORMAL
FEDRAT
PTYP_FINI
NO_TYPE
FINI
Page 338
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 7 - APPENDIX
Primary Type
Secondary Type
APT command
PTYP_HEIGHT
NO_TYPE
HEIGHT
PTYP_INSERT
NO_TYPE
INSERT
PTYP_LOADTL
STYP_LTLPOST
LOADTL/POST
PTYP_LOADTL
STYP_LTLPRE
LOADTL
PTYP_M_MODE
NO_TYPE
MODE/AUTO
MODE/FRAME
MODE/CLAMP
MODE/EULER
MODE/MULTAX
PTYP_MACHAXIS
NO_TYPE
MACH_AXIS
PTYP_MIKFUN
STYP_MIKFUN_ID
MIKFUN
PTYP_MIKFUN
STYP_MIKFUN_TYP
MIKFUN/OFF
MIKFUN/ON
MIKFUN/NC
MIKFUN/DOF
MIKFUN/SAVE
PTYP_NURBS
STYP_NURBS_END
END NURBS
PTYP_NURBS
STYP_NURBS_START
BEGIN NURBS
PTYP_OPSKIP
NO_TYPE
OPSKIP
PTYP_ORIGIN
STYP_ORIDAT
ORIGIN/DATUM
PTYP_ORIGIN
STYP_ORIMAN
ORIGIN/MANUAL
PTYP_ORIGIN
STYP_ORINC
ORIGIN/NCDATA
PTYP_ORIGIN
STYP_ORINULL
ORIGIN/X,Y,Z
PTYP_OUTPUT
NO_TYPE
OUTPUT
PTYP_P_MODE
NO_TYPE
MODE/*PLAN
MODE/POLAR
PTYP_PARTNO
NO_TYPE
PARTNO
PTYP_PITCH
NO_TYPE
PITCH
PTYP_REGLTL
NO_TYPE
LOADTL (same tool number)
PTYP_REGLTL
NO_TYPE
REGLTL
PTYP_RETURN
NO_TYPE
RETURN
PTYP_REWIND
STYP_REWOFF
REWIND/OFF
PTYP_REWIND
STYP_REWON
REWIND/ON
PTYP_REWIND
STYP_REWOUT
REWIND/OUT
PTYP_SAFETY
NO_TYPE
SAFETY
PTYP_SELCTL
STYP_SLTAUT
SELCTL/
.AUTOMATIC_PRE_SEL
PTYP_SELCTL
STYP_SLTNOR
SELCTL
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 339
Chapter 7 - APPENDIX
Primary Type
Secondary Type
APT command
PTYP_SEQNO
NO_TYPE
SEQNO
PTYP_SETPLN
STYP_DEFPLN
DEFPLN
PTYP_SETPLN
STYP_SETPLN
SETPLN
PTYP_SPINDL
STYP_MAXRPM
SPINDL/MAXRPM
PTYP_SPINDL
STYP_SNORMAL
SPINDL
PTYP_SPINDL
STYP_SPLOCK
SPINDL/LOCK
PTYP_SPINDL
STYP_SRANGE
SPINDL/RANGE
PTYP_STOP
NO_TYPE
STOP
PTYP_SUBPRG
STYP_DEFSUB
DEFSUB
PTYP_SUBPRG
STYP_ENDSUB
ENDSUB
PTYP_SWITCH
NO_TYPE
SWITCH
PTYP_THREAD
NO_TYPE
THREAD
PTYP_TLAXIS
NO_TYPE
TLAXIS
PTYP_TOOLNO
STYP_TLBORE
TOOLNO/...BORE....
PTYP_TOOLNO
STYP_TLDRILL
TOOLNO/...DRILL....
PTYP_TOOLNO
STYP_TLMILL
TOOLNO
PTYP_TOOLNO
STYP_TLMILL
TOOLNO/...MILL....
PTYP_TOOLNO
STYP_TLTURN
TOOLNO/...TURN...
PTYP_WIRE
NO_TYPE
WIRE
Page 340
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 7 - APPENDIX
7.3
CF_GETSTATE and CF_SETSTATE Parameters
The following table lists the possible parameters and possible values.
PARAM$
RC
Type of actual processing
WORKING_TYPE
0=MILL, 1=LATHE
MULTAX programming
MULTAX
0=OFF, 1=ON
thread cutting cycle
THREAD
0=OFF, 1=ON
status delay time
DELAY
0=OFF, 1=ON
2nd solution for rotation angle
ANGTWO
0=OFF, 1=ON
special plane choice active
SETPLN
0=OFF, 1=ON
SETPLN automatic active
SETPLN_AUTO
0=OFF, 1=ON
status of NC output
OUTPUT
0=OFF, 1=ON
Debug modus active
DEBUG
0=OFF, 1=ON
actual processing plane
PLANE
0=PLANE_XY_1,
1=PLANE_XY_2,
2=PLANE_ZX_1,
3=PLANE_ZX_2
4=PLANE_YZ_1,
5=PLANE_YZ_2
Cycle processing
CYCLE
0=FALSE, 1=TRUE
number of actual cycle position
CYCLE_POS_NB
0 ... n
status incremental output
INCREMENTAL
0=OFF, 1=ON
status optikal skip
OPSKIP
0=OFF, 1=ON
status sequence number output
SEQNO
0=OFF, 1=ON
MAINPART
Flag if pre read
UPDATEPOOL
0=FALSE, 1=TRUE
select tool active
SELCTL
0=OFF, 1=ON
actual feedrate output
FEDRAT
0=OFF, 1=ON
fedrat modification
FEDRAT_MODIFY
0=FED_NORMAL,
1=FED_MOD_ACTIVE,
2=FED_REPEAT
status circle correction
CUTCOM_RADIUS
0=NONE, 1=LEFT, 2=RIGHT,
3=OFF
calculate length correction
CUTCOM_LENGTH
0=NONE, 4=X_POS, 5=Y_POS,
6=Z_POS, 7=X_NEG,
8=Y_NEG, 9=Z_NEG
wire thread
WIRE_THREAD
0=OFF, 1=ON
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 341
Chapter 7 - APPENDIX
PARAM$
RC
conic type
WIRE_CONIC
1=2X, 2=4X
Flag for CHNGRG handling
WIRE_CHNGRG
0=OFF, 1=APP, 2=FIRST,
3=OFF
actual programed height
WIRE_HEIGHT
0.0..
actual time
ACTUALTIME
0.0..
Page 342
© CENIT AG Systemhaus
cPost Documentation V1R6
Chapter 7 - APPENDIX
© CENIT AG Systemhaus
cPost Documentation V1R6
Page 343