Uploaded by Michael Kashiotis

1400.210B.0-02 MotionOne G-Code ProgManual

advertisement
MotionOne CM
X
D=20
G&M Code
Programming Manual
Y
Z
General information, G and M Functions, parameter
programming and FlexProg
80
I=50
J=20
50
CNC Programming
10
10
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
MotionOne CM G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02
Information valid as of: 02/2019
Valid for the following CNC Firmware versions:
n
FW-MO-CM06-CNC-00-MC-02-xx-xx
n
FW-MO-CM06-CNC-01-USB-02-xx-xx
The German version is the original version of this documentation.
MotionOne CM - G&M Code Programming Manual
2
Legal information
We reserve the right to make technical changes.
This programming instruction has been prepared based on DIN EN 82079-1. The
content was compiled with the greatest care and attention and reflects the latest
information available to us.
We should nevertheless point out that this document cannot always be updated in
line with ongoing technical developments in our products.
Information and specifications are subject to change at any time. For information on
the latest version please visit www.lti-motion.com.
Copyright ©
The entire contents of this documentation, especially the texts, photos and graphics
it contains, are protected by copyright. The copyright is owned by LTI Motion GmbH
unless specifically marked otherwise.
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
Legal information
MotionOne CM - G&M Code Programming Manual
3
Table of contents
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
Table of contents
Legal information
3
Table of contents
4
1 General
6
1.1
1.2
1.3
1.4
1.5
1.6
Target group
Requirements
Applicable documents
Pictograms
Exclusion of Liability
Support
2 Safety
2.1
2.2
2.3
2.4
Overview
For your own safety
Safety information and warnings
Responsibility
3 General definitions
3.1 Address letters
3.2 Axis numbers
4 Components of a G&M code program
4.1 General information on the structure of blocks
4.2 M-codes
4.2.1 General M functions
4.2.2 M functions for control type eroding “EROD”
5 G Functions: General explanations
5.1 G00 Positioning in fast jog speed
6
6
6
7
7
7
9
9
9
9
10
11
11
12
13
13
14
14
15
17
18
5.2 G01 Positioning at the feed rate
5.3 G02 Circular interpolation - ClockwiseG03 Circular interpolation - Anti-clockwise
5.4 G04 Dwell time
5.5 G05 Spatial arc interpolation
5.6 G14 Macro call
5.7 G17-G19 change of plane
5.8 G22 Subroutine call
5.9 G23 text functions
5.10 G24 Definition of rescue point
5.11 G25 RTCP Rotation Tool Centre Point
5.12 G26 Free plane
5.13 G27 Tool zero point
5.14 G30 Spline interface (online spline)
5.15 G305 P5 interpolation (online polynomials)
5.16 G40 Deletion of the tool path correction / milling cutter radius correction
5.17 G41 Tool path correction / Milling cutter radius correction left
5.18 G42 Tool path correction / Milling cutter radius correction right
5.19 G43 Tool path correction / Milling cutter radius correction up to
5.20 G44 Tool path correction / Milling cutter radius correction via
5.21 G50/G51/G52 PRESET
5.22 G50 Deactivate PRESET
5.23 G51 Activate PRESET
5.24 G52 Program PRESET
5.25 Zero offset and coordinate rotation
5.26 G53 Deletion of the zero offset
5.27 G54 - G59 zero offset and coordinate rotation
5.28 G60 Exact stop on
5.29 G61 Exact stop off
5.30 G70 Units of measurement in inches (inch)
5.31 G71 Units of measurement in millimetres (mm)
5.32 G72 Deletion of mirror image machining and scaling
5.33 G73 Mirror image machining
5.34 G73 Scaling
5.35 G79 Cycle execution
5.36 G90 Absolute measure
5.37 G91 Relative measure
5.38 G92 Relative zero point offset and coordinate rotation
4
18
19
20
21
22
23
24
25
26
27
29
32
35
36
37
38
39
40
41
42
43
43
44
46
47
48
51
52
53
53
54
55
56
57
58
58
59
5.39 G93 Absolute zero point offset and coordinate rotation
5.40 G94 Speed programming
5.41 G95 Time programming
5.42 G107 Eroding: Define the directional vector for the lift-off movement
5.43 G181 Probe calibration
5.44 G190 Absolute circle centre
5.45 G191 Relative circle centre
5.46 G288 Set Look Ahead parameters
5.46.1 G288,0 LookAhead basic parameter
5.47 G305 P5 interpolation (online polynomials)
5.48 G488 Simple measurement block
5.49 G488,1 Simple measurement block
5.50 G581 Continuous operation rotation
5.51 G781,1 Spindle offset
5.52 G783,0 Read/Write zero offset
5.53 G1000 eroding: Speeds
5.54 G1001 Eroding: Path descriptions
5.55 G1002 Eroding: Factors and modes
5.56 G1003 Eroding: Time data
5.57 G1004 Eroding: Orbital movement in the selected plane
5.58 G1005 Punching: Parametrization and activation
5.59 G1010 Laser command without exact stop
5.60 G1011 Laser command with exact stop
5.61 G1014,x data exchange for synchronized tasks
5.62 G1015 Laser processing: Laser Start
5.63 G1016 Laser processing: Laser Stop
5.64 G1017 – NDC functions (nozzle distance control)
5.65 G1018 – Functions of the calibration table and the velocity profile (nozzle distance
control)
61
63
64
65
66
67
68
69
69
70
71
74
75
76
78
80
81
83
85
86
87
90
91
93
94
94
95
101
7 Flexible G&M code Programming (FlexProg)
102
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
Table of contents
8 Index
103
104
104
105
105
106
107
107
108
109
109
109
110
110
110
111
112
112
113
115
119
97
6 Parameter programming
7.1 General
7.2 Restrictions
7.3 General program structure
7.4 Data type
7.5 Functions
7.5.1 Function declaration
7.5.2 Macros and Q parameters
7.5.3 Function definition
7.5.4 Variables
7.5.5 Communication variables
7.5.6 Expressions and operators
7.5.7 Mathematical functions
7.5.8 Assignment of G-Code addresses
7.5.9 Comment marks
7.5.10 Point definition
7.5.11 Instruction
7.5.12 Jump marks
7.5.13 GOTO/IF ... GOTO/IF ELSE
7.5.14 FOR loops
7.5.15 WHILE loops
7.5.16 DO ... WHILE loops
7.5.17 SWITCH ... CASE branching
7.6 Sample programs
102
103
103
MotionOne CM - G&M Code Programming Manual
5
1 General
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
1 General
The LTI Motion GmbH product DVD contains the complete documentation belonging
to the respective product series. The documentation of a product series includes
Betriebsanleitung (hardware description), Geräte Hilfe and Programm-Hilfe
(software description) and other Benutzerhandbücher (e.g. field bus description),
programming instructions and Ausführungsbeschreibungen. They are available in
6
Work related to other specialised areas, such as transportation, storage and
disposal must be performed exclusively by appropriately trained personnel.
NOTE
l
This description is only valid for MotionOne CM Steuerung in the
CNC version.
PDF format.
1.3 Applicable documents
1.1 Target group
Dear user,
The programming instructions are designed for trained specialists. A basic
knowledge of CNC programming is a prerequisite. The target group includes people
such as programmers, developers and project engineers with appropriate training.
1.2 Requirements
Requirements for using LTI Motion GmbH devices:
l
l
l
l
The documentation for the devices must be legible, accessible at all times
and kept for the product’s entire service life.
Read and understand the documentation for your device.
Qualification: To avoid bodily injury and property damage, only qualified
personnel with electrical training may work with/on the device.
Required knowledge:
- national accident prevention rules (e.g. BGV A3 in Germany)
- setup, assembly and commissioning of the device
All of the further applicable documents for this device can be found on our
website:
www.lti-motion.com under MotionOne CM
1.4 Pictograms
1.6 Support
The pictograms used in this documentation have the following meaning for the user:
Address:
l
References to other documents or help systems.
Our Helpline can assist you expediently and quickly in the event of questions on the
programming of your machine. The technical CNC Helpline in Wasserburg can be
reached via email or telephone:
NOTE
l
LTI Motion GmbH
Am Weiher 2
88142 Wasserburg
Deutschland
Useful information and special notes.
Opening
hours:
Mon–Thu: 8 am–5 pm (CET)
Fri: 8 am–12 pm (CET)
For the pictograms for “safety information and warnings” used in this documentation,
see the Abschnitt "Safety information and warnings" auf Seite 9.
1.5 Exclusion of Liability
Observing all the instructions and information in the documentation for
LTI Motion GmbH devices is a prerequisite:
l
l
Email:
helplinecnc@lti-motion.com
Telephone:
+49 8382 9855-65
NOTE
l
For detailed information on our services, please visit our website,
www.lti-motion.com.
for safe operation and
to attain the performance characteristics and product characteristics
described.
LTI Motion GmbH accepts no liability for personal injury, material damage or
financial losses arising from failing to observe the documentation.
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
1 General
MotionOne CM - G&M Code Programming Manual
7
1 General
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
MotionOne CM - G&M Code Programming Manual
8
2.3 Safety information and warnings
2 Safety
Our devices may pose certain hazards. Therefore, always observe the following
safety information and warnings.
2.1 Overview
CAUTION!
Our devices are designed and built with the latest technology and comply with all
recognized safety rules and standards. Nevertheless, there are potential hazards
that may arise during their use. In this chapter:
l
l
l
Your system/motor may be damaged if put into operation in
an uncontrolled or inappropriate manner.
Improper conduct can cause damage to your system /
machine.
We provide information regarding the residual risks and hazards posed by
our devices when they are used as intended.
l
We warn you about foreseeable misuse of our devices.
We point out that it is necessary to exercise due care and caution and go
over measures designed to minimize risk.
2.2 For your own safety
When installing and commissioning your device, you must
observe the documentation for the relevant device family!
Our devices are designed to be fast and easy to operate. For your own safety and to
ensure reliable operation of your machine, take note of the following:
Step
Damage to the device as a result of incorrect operation!
Failure to exercise caution or follow proper working
procedures may result in damage to the device.
NOTE
l
CAUTION!
Before the “Start” step, make absolutely sure that a valid
setpoint has been entered, as the configured setpoint
will be immediately transmitted to the motor after the
motor control function starts, which may result in the
motor accelerating unexpectedly.
l
The mains voltage for the power supply must not be
switched on until after the available mains voltage
setting has been configured in the device firmware and
the device is restarted (in the event that the mains
voltage or the switching frequency has been changed).
Action
Precautions against bodily injury and property damage
1.
Ensure there is no possibility of bodily injury or damage to the machine
when testing and commissioning the device. To this end, make sure to
observe Abschnitt "Safety information and warnings" auf Seite 9 as well.
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
2 Safety
MotionOne CM - G&M Code Programming Manual
9
2 Safety
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
2.4 Responsibility
Electronic devices are not fail-safe. The company setting up and/or operating a
complete machine or system is responsible:
l
For ensuring that the motor will be brought to a safe state if the device fails.
l
For the safety of persons and machinery.
l
For the complete machine’s functional capability.
l
For the risk assessment of the complete machine or system to
DIN EN 12100:2011 (formerly DIN EN 14121:2007) and EN ISO 13849-1
(formerly DIN EN 954-1).
Observe the section on “Electrical equipment of machines” in EN 60204-1:2006,
"Safety of machines”. The safety requirements for electrical machines defined there
are intended to ensure the safety of people, equipment and systems.
The emergency-stop function (to EN 60204) shuts down the power supply of a
machine, which leads to uncontrolled rundown of drives. In order to prevent hazards,
check whether the following will be required:
l
Keeping individual motors running.
l
To initiate certain safety procedures.
l
Integrating an emergency stop function (emergency stop function: stopping
movement by “switching off the electrical power supply” or STO Safe Torque
Off).
MotionOne CM - G&M Code Programming Manual
10
Character Function
3 General definitions
3.1 Address letters
The following address letters have fixed meanings assigned to them.
T
Tool number
M
Machine function
W
Command extension
Tabelle 3.1: Definition of the address letters (Fortsetzung)
Character Function
N
Block number
G
Path condition
A, B, C
X
Y, Z
I, J, K
Path information A axis, B axis, C axis
Path information X axis, dwell time
Path information Y axis, Z axis
Interpolation parameters, circle centre
F
Feed speed, dwell time, time display at G95 (Inverse Time
Programming)
O
Output address
D
Additional information (correction memory, cutting edge correction
table)
E
Additional information on the PLC
S
Spindle speed
Tabelle 3.1: Definition of the address letters
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
3 General definitions
MotionOne CM - G&M Code Programming Manual
11
3 General definitions
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
3.2 Axis numbers
The following axis numbers have fixed axes assigned to them.
Axis
Number
Axis
Number
A
0
X‘
8
X
1
Y‘
9
Z
2
P
10
Y
3
Q
11
B
4
R
12
C
5
U
13
D
6
V
14
E
7
W
15
Tabelle 3.2: Definition of the axis numbers
12
4 Components of a G&M code program
4.1 General information on the structure of
blocks
The sequence of a machining process on the machine is described by the G&M
code program. It consists mainly of a sequence of program blocks. A program block
contains all of the information necessary for a work step. Block numbers can be
entered under the address N.
For the controller, programming without block numbers is also permitted.
With program words/functions, as a general principle, a differentiation is made
between modal (latching) and non-modal words.
A word is modal if its value remains effective until it is overwritten by another value,
or the end of the program has been reached. In contrast, non-modal words only
have an effect within the block in which they have been programmed.
The following functions can be programmed within a block.
Character Function
N
Block number
G
Path condition
A, B, C
X
Y, Z
I, J, K
Path information A axis, B axis, C axis
Path information X axis, dwell time
Path information Y axis, Z axis
Interpolation parameters, circle centre
F
Feed speed, dwell time, time display at G95 (Inverse Time
Programming)
O
Output address
D
Additional information (correction memory, cutting edge correction
table)
E
Additional information on the PLC
S
Spindle speed
T
Tool number
M
Machine function
W
Command extension
Tabelle 3.3: Overview of the functions within a block
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
4 Components of a G&M code program
MotionOne CM - G&M Code Programming Manual
13
4 Components of a G&M code program
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
14
4.2 M-codes
Example:
G02 X50 Y0 I25 J0 F2000 S10000 M3 T7 M6
G02 Path condition circle in clockwise direction
X50 X coordinate
Y0 Y coordinate
I25 Auxiliary parameter circle centre X coordinate
J0 Auxiliary parameter circle centre Y coordinate
F2000 Feed rate 2000 mm/min
S10000 Spindle speed 10000 1/min
M3 Machine function 'Spindle on'
T7 Tool number 7
M6 Machine function 'Change tool'
Special characters
The following special characters can be used within a block:
Character Function
%
The rest of the line is interpreted as a comment
;
The rest of the line is interpreted as a comment
[]
Jump mark, index at FlexProg
/*...*/
()
Encapsulated comment at FlexProg
Comment, function bracket at FlexProg
Tabelle 3.4: Overview of permitted special characters
The M functions initiate certain machine functions. These functions may differ
depending on machine type/manufacturer.
4.2.1 General M functions
M
Function
Effective*
M00
Programmed stop
End of block
M01
Optional stop
End of block
M02
End of program
End of block
M19
Spindle stop with defined end position
End of block
M30
End of program with spindle 0 Off
End of block
Tabelle 3.5: General M functions
* Note: The function takes effect only at the beginning/end of a block.
4.2.2 M functions for control type eroding “EROD”
M
Function
M
Function
Effective*
Effective*
M802
Modulo formation off
Start of
block
M92
Lift-off via programmed direction vector (G107 …)
Start of
block
M803
Modulo formation on
Start of
block
M93
Delete last retraction point
Start of
block
M900
Activate sparking out
Start of
block
M94
Spark erosion function AFC OFF, no forward and backward
interpolation
Start of
block
M95
Spark erosion function AFC ON
Start of
block
M96
Retreat on the path ON
Start of
block
M97
Retreat via points ON
Start of
block
M98
Saving the actual position as a retraction point
Start of
block
M800
Switching off collision protection via G&M-code program
Start of
block
M801
Switch collision protection on again
Start of
block
Tabelle 3.6: General M functions (Fortsetzung)
Tabelle 3.6: General M functions
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
4 Components of a G&M code program
MotionOne CM - G&M Code Programming Manual
15
4 Components of a G&M code program
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
MotionOne CM - G&M Code Programming Manual
16
5 G Functions: General explanations
All of the following G-codes begin before the functional description with a definition
of the property, topic, position and syntax.
Property: modal / not modal
MODAL means that the command/function remains active until it is overwritten.
Topic: The G-codes can be divided into the following topics:
n
Interpolation type
n
Axis movement
n
Special command
n
Setup command
n
Tool command
n
Cycle command
n
Eroding command
n
Laser command
n
Punching command
n
...
Position:
DEF = Default (active after starting the control unit)
--- = Not pre-set
Syntax: Syntax description
Unit: (optional)
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
17
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5.1 G00 Positioning in fast jog speed
5.2 G01 Positioning at the feed rate
Property
Topic
Position
Syntax
Property
Topic
Position
Syntax
modal
Axis movement
--G00
18
modal
Axis movement
DEF
G01
The path information G00 programs rapid traverse movements by specifying the
The path information G01 programs feed movements by specifying the target point.
target point. The target point is reached by entering it either in absolute or relative
dimensions. The rapid traverse speed can be defined in the MotionCenter.
The target point is reached by entering it either in absolute or relative dimensions.
The feed rate can be defined in the MotionCenter or programmed by means of the F
parameter.
X
X
P1
P1
Y
Y
F2000
50
50
50
50
Example
G00 X50 Y50
;The axes are moved by interpolation to point P1
Example
G01 X50 Y50 F2000
;Positioning at point P1 at 2000 mm/min
5.3 G02 Circular interpolation - Clockwise
G03 Circular interpolation - Anti-clockwise
X
Property
Topic
Position
Syntax
modal
Axis movement
--G02 / G03 <parameter list>
A
+20
C
B
-20
-20
-40
For the circular interpolation, the axes are moved on an arc from the starting point to
the end point. The movement can take place clockwise by selecting G02 and anticlockwise by selecting G03. Circular interpolation must contain the following
parameters and can be applied in all 3 planes (see also G17 / G18 / G19).
G02 or G03 (direction of rotation), end point of the arc, radius of the circle (R) or
circle centre (I, J, K). I, J, K are representing the axes X, Y and Z. The starting point of
the arc is determined by the current axis position. The centre of the arc can be
specified in absolute (G190) or relative (G191) coordinates. As an alternative to the
centre, the radius can be programmed directly by entering the address letter R.
However, this only applies to arcs having an angle of rotation of less than 180°.
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
+40
Y
-40
-Y
-X
Example
G01 X0 Y0 ;Starting point approach
G02 X0 Y0 I20 J0 ;Clockwise travel to X0 Y0. Circle centre at X20 Y0 (A)
G03 X0 Y0 I-20 J0 ;Counterclockwise travel to X0 Y0. Circle centre at X-20 Y0 (B)
G02 X0 Y-40 R20 ;Clockwise travel to X0 Y-40. Radius 20 mm (C)
MotionOne CM - G&M Code Programming Manual
19
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5.4 G04 Dwell time
Property
Topic
Position
Syntax
Unit
NOTE
Only for laser applications in combination with the
MotionOne CM E
not modal
G&M command
--G04 <Parameter list>
Seconds
If the controller has been equipped with the MotionOne CM E expansion
module and pulsing has been activated via "G1010 O1", the dwell time
will be executed with higher accuracy. The time can then be programmed
to the nearest 10 ns, i.e., the smallest value is 0.00000001 seconds.
During this time, the pulses are output to the P output of the MotionOne
CM E with a predefined pulse width. For laser applications, this function is
called "stationary pulsing" or "piercing".
The function G04 allows you to program a dwell time. The time is specified by the
parameter X. The function is only effective blockwise. G04 must stand alone in an
G&M-code program line
For synchronization of FlexProg calculation and motion, G04 can be used, since a
contour interruption takes place. This also applies to the dwell time X0.
Address
Value range
Unit
Accuracy
X
0 sec – 2 years (default = 0)
s
Standard: 0.01 sec
MotionOne CM E: 10 ns
12
1
11
1
1
1
10
1
2
8
4
2
3
9
7
5
6
9
3
8
4
7
5
6
20
Value range: 0 – 4 500 000 sec
Example
G04 X11.4
G04 X0
G04
; Dwell time 11.4 seconds
; Dwell time 0 seconds
; Dwell time 0 seconds
5.5 G05 Spatial arc interpolation
Property
Topic
Position
Syntax
modal
Axis movement
--G05 <Parameter list>
This function allows you to describe a spatial arc (spatial circle section). No
information such as radius or direction of rotation exists for this function.
A G&M code for spatial arc interpolation must contain the following parameters:
G05, end point of the spatial arc in X, Y and Z (A), intermediate point on the spatial
arc in I, J and K (B). The starting point (C) of the spatial arc is determined by the
current axis position.
A
B
Z
Y
X
C
Example
G01 X0 Y0 Z0
G05 X50 Y50 Z0 I20 J30 K30
;Starting point approach
;Endpoint at X50 Y50 Z0
;Intermediate point at X20 Y30 Z30
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
21
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5.6 G14 Macro call
Property
Topic
Position
Syntax
modal
Special command
--G14 N = [“] Macro name [“] [Pn]
A macro is a self-contained program part that must be programmed only once. A
macro is not executed until it is defined or called by the main program or another
macro. In contrast to the genuine subprograms, macros are incorporated in the
program text. A macro starts with a header in which the name of the macro is
defined. No other instructions (not even block numbers) may be programmed in the
header. The name of the macro must not contain more than 24 characters and
stands between the character #. The end of the macro definition is marked by a
block containing the instruction ##. Here, too, no other instructions may be
programmed.
Example
#Rectangle#
G01 X0 Y0 F2000
X100
Y100
X0
Y0
##
;Header containing the name of the macro
;Instructions
;End identifier
22
The optional inverted comma characters [“] at the beginning and end of the name
only have to be entered if the name of the macro contains symbols or blanks. The
optional address letter 'P', followed by a number, indicates how many times the
macro is to be executed. The maximum number of repetitions is: 256
If a macro has been defined as described above, it can be called in the program as
follows.
G14 N = Rectangle P3
;Example macro called three times
5.7 G17-G19 change of plane
CAUTION!
Damage to the workpiece or the machine!
Incorrect operation can cause damage to the workpiece or the
machine.
G17 Plane XY
G18 Plane ZX
G19 Plane YZ
l
l
Property
Topic
Position
Syntax
modal
Setup command
Preset G17
G17 / G18 / G19
Using G17 / G18 / G19 causes the selection of the operating plane or the definition
of the interpolation plane.
G02
G0
2
G1
9
X
G17
The use of G18 according to DIN 66025 can be
activated in the XPanel user interface under – Service –
F6-System programs – F4-System configuration – G&M
converter > ‘G18 according to DIN 66025’.
NOTE
l
l
Z
G18 in the CNC is not according to the DIN 66025.
A change of plane via G17/G18/G19 does not cancel active zero
offsets.
A change of plane with G17/G18/G19 does not cancel an active
rotation.
G03
2
G0
G0
3
3
G0
8
G1
Y
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
23
5 G Functions: General explanations
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5.8 G22 Subroutine call
Property
Topic
Position
modal
Special command
---
Syntax
G22 N = [“]Program name [“] [Pn]
G22 N = [“]Database path: Program name [“] [Pn]
Programs that must be repeated several times can be called from a main program by
entering G22. This program is available as a separate G&M-code program in the
same database as the calling main program. If the program to be called is not
included in the program database of the control, the database path must also be
specified. Enter the designation from "Programs / data base:" to call the database
path in the XPanel.
Example
G22 n="C01:ncprg_name" is loading from the user database path 1
G22 n="S05: ncprg_name" is loading from the system database path 5
The program name may contain 77 characters maximum. The optional inverted
comma characters [“] at the beginning and end of the name only have to be entered
if the program name contains symbols or blanks. The optional address letter 'P',
followed by a number, indicates how many times the program is to be executed.
The maximum number of repetitions is: 32767
Example
G22 N = Feed program P3 ;Feed program called three times
MotionOne CM - G&M Code Programming Manual
24
5.9 G23 text functions
Property
Topic
Position
Syntax
Example
not modal
G&M command
--G23 N = “Text “ P<Type> I<Index>
The command G23 can be used to call up different functions with ASCII texts. The
target is always to transmit a text with a length of 80 characters to the PLC, CNC or
the display.
P
type
Command
I Index
3
Transfer text to the XPanel user interface
1-3
(Default:
1)
4
Redefines the measuring log file names of the measuring
cycles "mprot.log". If no path is specified, the data are
transmitted to %andronroot%\SystemData\Repository\Local
Control\Measuring Protocol
(C:\andron\SystemData\Repository\Local Control\Measuring
Protocol\*). To store the measurement log on a different
database path, the path can be placed in front of the file
name, for example using ‘S02:’ (see also G22). Specified
paths are not created by the CNC and must already exist at
program start.
not
necessary
5
Writes the values of the communication variables into a log
file. The name for the log file is specified according to the
same rules as for P=4, whereby the database path of the
current G&M code program is used as standard.
IKV index
0 – 999
default: 0
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
G23 P3 N=“Finishing part1“
Text is displayed in the prompt of the XPanel position
menue in line 1.
G23 P3 N=“Finishing part1“ I1
Text is displayed in the prompt of the XPanel position
menue in line 1.
G23 P3 N=“External finishing work“ I2
Text is displayed in the prompt of the XPanel position
menu on line 2.
Beginning with this program line, the measuring cycles
of the log file will be named with the specified
G23 P4 N=“C01:Measurement_123.log“ designation C01: and the path specification and no
longer with "C:\andron\ SystemData\Repository\Local
Control\Measuring Protocol\mprot.log"
IKV[100] = 156
G23 P5 N=“S02:Daten_123.log“ I100
The value of IKV[100] is written into the log file
"C:\andron\SystemData\Repository\Cycles\Measuring
Protocol\Daten_123.log".
MotionOne CM - G&M Code Programming Manual
25
5 G Functions: General explanations
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5.10 G24 Definition of rescue point
Property
Topic
Position
Syntax
modal
Rescue point
--G24 [N = “Comment“]
G24 allows a rescue point to be programmed in the G&M code. The controller then
backs up all relevant data that are required for a rescue point allowing program
resumption. Among other things, this includes saving of the line number, program
name and how often a rescue point has occurred in the current program. This
information can then be retrieved in the event of a program abort so that resumption
is possible at the last rescue point by means of a block search. When a program is
ended normally or a new program is started, the information on the last rescue point
is reset. As an option, a comment can be added which is then also stored and can
be retrieved.
Example
G24 N=“Begin Contour 5“
MotionOne CM - G&M Code Programming Manual
26
5.11 G25 RTCP Rotation Tool Centre Point
Property
Topic
Position
Syntax
modal
Transformation command
--G25 <Parameter list>
RTCP describes the functionality of keeping a (TCP - Tool Centre Point) constant
during the movement of rotatory axes. Despite the use of rotatory axes, the position
of the TCP relative to the workpiece does not change. RTCP normally effects a
compensation movement of the corresponding axes if one of the rotary axes is
moved.
RTCP can be switched on/off with the H parameter to G25. The storing and restoring
of RTCP states is administered specifically to the program, i.e. if RTCP is deactivated
in the sub-program but the state RTCP active was stored in the main program, the
state RTCP is actively restored after returning from the sub-program and the RTCP
command.
G Command
Designation
Meaning
G25 H0
Switch off
RTCP
RTCP is deactivated
G25 H1
Switch on
RTCP
RTCP is activated according to the kinematics of the
machine defined in the machine parameters.
G25 H2
Save RTCP
state
The state of RTCP (ON/OFF) is stored in the buffer,
e.g. to be used with tool change G&M codes
G25 H3
Restore
RTCP state
The state of RTCP (ON/OFF) stored in the buffer is
restored, e.g. with a temporary deactivation in the tool
change G&M codes
Functional description
Activation and deactivation of 5-axis transformation
G25
RTCP
The status of the transformation is displayed in the status area in the top
right corner on the XPanel with the text "G25 RTCP” on an icon.
Activation in the manual mode is possible by pressing the corresponding key.
Activation in the MDI and automatic mode is also possible by entering G25 H1.
In the position display, the position in the programming coordinate system (PROG
system) is always shown on the display of the control positions. Upon activation or
deactivation, the coordinates move depending on the position of the rotatory axes.
G25 H1 / G25 H0 (On/Off)
RTCP can be activated and deactivated as often as required within an G&M code
program.
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
27
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
28
Behaviour upon G&M RESET
G72 / G73 Mirroring and RTCP
If RTCP is active, it also remains active after an G&M RESET.
The G73 command makes it possible to activate mirroring about the X or Y axis or
also about both axes (prior to the activation of RTCP).
EMERGENCY STOP by the operator, PLC or controller program
RTCP is reset automatically.
EMERGENCY STOP due to drive error
RTCP is reset automatically.
Programmed feed F
The programmed feed with active RTCP always refers to the resulting path of all
programmed axes.
NOTE
Referencing one or all axes
l
RTCP is not reset automatically.
Tool change with RTCP active
G25 H2: RTCP must be deactivated in the tool change program. The status of the
function (on or off) is saved at the same time.
G25 H3: After tool change, the previous status of the RTCP function in the tool
change program is restored.
Changing axis orientations in RTCP
The axis orientation can be changed manually in the automatic interruption mode
and the program can be continued. The speed control is, however, optimised with
regard to the previous axis orientation and is maintained. The changed setting is
retained until the next rotary axis positioning takes place.
Moving axes in MDI with RTCP active
All axes may be moved in MDI. There is no restriction as a function of the RTCP
function.
The tool is set down in a configurable order. For large angular
positions, we therefore recommend positioning the rotatory axes
in the manual mode.
5.12 G26 Free plane
Property
Topic
Position
Syntax
modal
Transformation command
--G26 <Parameter list>
G26 without parameters deactivates the plane function
Parameters Description
H
Switch H is used to define the application of rotation WX, WY and
WZ. If H is not specified, H0 is applied.
H0
The rotations are defined by means of Euler angles or solid angles.
The angles are defined as follows:
- WX - Rotation about the current Z axis
- WY - Pivoting about the new Y axis
- WZ - Rotation about the new Z axis
The rotations are always executed in this order, I, J and K must not
necessarily be specified. The specification of WX and WY is
normally sufficient.
The command is used for defining the rotation of the programming coordinate
system. It effects a rotation around the specified angles in the given order, the centre
of rotation is the current zero point. The aim is the definition of a new machining
plane which must not obligatorily be parallel to one of the main planes. No
movement takes place after specification of G26. But the display of the current
control position changes to the position with reference to the new system. After entry,
the changed coordinate system becomes effective immediately.
H1
The angular positions are to be applied in a given order, which is
specified with I, J, and K. As a default the following order applies: I1
J2 K3. Independent from the programmed order, the angles are
specified as follows with reference to the machine coordinate
system:
- WX - Rotation around the X axis
- WY - Rotation around the Y axis
- WZ - Rotation around the Z axis
H2
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
The defined angles define rotations in the stationary machine
coordinate system. The order is therefore not to be specified. An
angle defined with WX rotates the coordinate system around the
not-turned X axis of the machine system, no matter if other rotations
already apply.
- WX - Rotation around the existing X axis
- WY - Rotation around the existing Y axis
- WZ - Rotation around the existing Z axis
MotionOne CM - G&M Code Programming Manual
29
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
Parameters Description
The parameter R can be used to control whether the defined
rotation shall take place with reference to the stationary machine
axes or shall be rotated relative to the current, already turned
system. If R is not specified, R0 is applied. R can be used with all
angle variants of H.
R
R1
new rotation is relative to the current coordinate system
R0
new rotation is relative to the machine coordinate system
WX, WY, WZ
I, J, K
These parameters contain the angles to be set. Parameter H
controls how to calculate these angles to reach the new position.
Order of the rotations with H1 where the following applies:
- I is the position of the rotation WX around the X axis
- J is the position of the rotation WY around the Y axis
- K is the position of the rotation WZ around the Z axis. If no order is
specified, the following applies: I1 J2 K3. If an order is specified for
the rotation, all the defined angles must be programmed with an
information regarding the order. For H0 and H2 it is not necessary
to specify an order.
NOTE
l
Function G26 does not belong to the group of commands for a
change of plane. It can be combined with G17, G18 and G19.
30
Example: Pocket milling on non-parallel planes, kinematics swivel
head/rotary table
n
cuboid workpiece with pocket geometry on inclined plane
n
point X70 Y30 Z50 is the marginal point of the new machining plane
n
the pocket has the sizes 35x20x25 [mm]
n
blue coordinate system is created by offset with G92
n
G26 rotates and pivots the system into the new position which created the
yellow coordinate system and the searched-for machining plane (dark grey)
...
;Tool selection, technological data
G53
; delete all zero offsets
G56
; Workpiece zero with coordinate system parallel to
the machine coordinates system (light-green)
G92 X70 Y30 Z50
; Zero offset to the workpiece (blue)
G26 H1 WZ=-45 WY=30 K1 J2
;Rotation of the system, initially about the Z-axis
(WZ=-45 K1), then pivoting of the system about
the new Y-axis (WY=30 J2) – the new
programming coordinate system thus results
(yellow)
; G26 WZ=-45 WY=30
;G26 WZ=-45 WY=30 ; same command but using
Euler or solid angles, simple application, here as a
comment
G25 H1
; Activate RTCP
G0 C45 B30
; Pivot in
G87,1 B2 Z25 K5 X35 Y20 R4 J1 I40 D0 E250 ; Cycle definition in standard coordinates
G79 X15 Y0 Z0
; Execution instruction
G26
; Cancellation of the plane definition, G56 and G92
are active again
G53
; Cancellation of the absolute and relative zero
offset
G56
; Activation of the workpiece zero
...
Example:
Example of order
G26 H1 WZ=-45 WY=30 K1 J2
Example of Euler
G26 WX=-45 WY=30
Example of cancellation
G26
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
31
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5.13 G27 Tool zero point
Property
Topic
Position
Syntax
modal
Transformation command
--G27 <Parameter list>
The command is used to define an offset and rotation of the tool system. It causes an
offset of the leading point of the control to the specified point. G27 does not cause
any movement, but it causes a jump in the display of the control position when
activated. After the specification, the changed tool system becomes active
immediately.
Parameters Description
X, Y, Z, C
These parameters contain the offsets to be defined.
G27 is usually programmed after a tool or spindle change if this change have an
effect on the leading position of the control. The new programming of G27 cancels
all previously valid values, i.e.:
n
all previously valid parameters are deleted, set to 0.0,
n
the axes that have actually been programmed are transferred to the new
offset/rotation,
n
Cascaded specifications for the offsets are not possible.
All movements of the rotary axes are compensated by the control when G27 is
active, as if the rotation is executed in the tool zero point. This ensures that all
relevant compensation movements are calculated and moved in the interpolation
cycle from the changed positions of the C axis. Therefore, the RTCP function is
32
automatically activated at the same time as the tool zero point. The deactivation of
RTCP also occurs automatically with the cancellation of G27. It is therefore not
necessary to program G25 within G27.
G27 is activated/deactivated either in the G-code program or in MDI.
Offset
The offset to be specified consists of components X, Y and Z and is specified from
the new tool zero point. The reference system is the tool coordinate system parallel
to the machine coordinate system with the origin around the centre of the tool holder.
Rotation
State
In addition to the offset of the tool zero point, the parameter C can also be used to
specify a rotated clamping of the tool. The angle also refers here to the position of
the tool clamping system in relation to the new system. The tool in the Fig. is rotated
by 30° in the clamping. The angle is specified in cycle G27 as parameter C.
The status of the tool zero compensation is displayed in the XPanel. If cycle G27 has
been activated in MDI or AUTOMATIC, the corresponding symbol is displayed.
G27
RTCP
G27 was activated for an electrode offset, at the same time RTCP was
switched on.
Kinematics
Activation of the dynamic TCP routing requires the correct specification of the
machine kinematics in the MotionCenter. Using the example of an eroding system
with C-axis in the tool holder, the following entry would be necessary:
Parameters
Description
Value
E-0-0700
Kinematics model of the machine
30
Example
G27 X-25 Y-10 Z50 C-30
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
33
5 G Functions: General explanations
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
Bild 4.1: Machine configuration in the MotionCenter, setting Kinematics model of the
machine
MotionOne CM - G&M Code Programming Manual
34
5.14 G30 Spline interface (online spline)
Property
Topic
Position
Syntax
modal
Traverse command
--G30 <Axis information> or <Spline head data>
To do a fast and efficient analysis of the G-code created with spline, the spline data
are reduced to an introductory path condition G30 with spline head data and a block
matrix.
The converter recognizes from this the start situation (cf. path starting point up to
now) and treats this accordingly. First spline arc point is implicitly the position which
has been reached until then. Start direction in the first spline arc point is the direction
vector arising due to the Euclid distance calculation, i.e. the direction vector between
the current position and the first entry of the spline arc points. This needs to be taken
into account in the calculation of the first arc length (resulting path) in the start
interval within the program to be created. Within the spline head data it is possible to
also optionally declare the direction of start at the starting point of the spline.
{
pos, pos, [pos, ...,] ric, ric, [ric,...,] weg [,Fwert]
pos, pos, [pos, ...,] ric, ric, [ric,...,] weg [,Fwert]
...
pos, pos, [pos, ...,] ric, ric, [ric,...,] weg [,Fwert]
}
The following parameters are used for definition:
Designation
Description
Axis
information
Possible axis information: A B C X Y Z
The axis information defines the axis allocations and the order of
the subsequently expected positions and directions. There must
be a minimum of two and up to a maximum of six axis indications
available.
Spline head
data
Axis identifiers of the axes involved (A, X, Z, Y, B, C, U, V) in
control sequence with optional start direction [ric]. Between the
axis information and/or the start direction components there is no
delimiter (space or comma) necessary. If start direction
components are used, the G&M converter expects a directional
component for every axis identifier. The directional components
are not necessarily standardized.
pos
Position of an axis
ric
Direction part (directional component) of an axis, not necessarily
standardized
path
Approximated curve length in mm (convention: In the calculation
of the curve or arch length, mm is set to be the same as degrees
and either all axes should/have to be involved or a 'fictive path'
that contains the speed profile should/have to be indicated.)
Fvalue
Optional indication of speed in mm/min related to the resulting
path in the interval.
Example
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
AXZ Y
; axis identifier without direction of start component
(axis information)
A0.7 X1.0 Z0.33 Y0.1 C0.0
; axis identifier with direction of start component
(spline head data)
MotionOne CM - G&M Code Programming Manual
35
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5.15 G305 P5 interpolation (online polynomials)
Property
Topic
Position
Syntax
modal
Traverse command
--G305 <axis information>
To make the analysis of the created G&M code with polynomials efficient and fast,
the polynomial data are reduced to an introductory path condition G305 with
polynomial head data and a block matrix.
From this, the converter generates a G01 for the first point (first block line after {...).
The first spline arc point is the position reached in this manner. The first and second
derivative in this first point of the polynomial chain is also taken from the data of the
first block entry line.
{
pos, pos, [pos, ...,] ric, ric, [ric,...,] , d2, d2, [d2,...,] path [,Fvalue]
pos, pos, [pos, ...,] ric, ric, [ric,...,] , d2, d2, [d2,...,] path [,Fvalue]
...
pos, pos, [pos, ...,] ric, ric, [ric,...,] , d2, d2, [d2,...,] path [,Fvalue]
}
36
The following parameters are used for definition:
Designation
Description
Axis
information
Possible axis information: A B C X Y Z, A6= ...
The axis information defines the axis allocations and the order of
the subsequently expected positions and directions. At least two
must be and a maximum of 6 axis indications can be available.
Spline head
data
Axis identifiers of the axes involved (A, X, Z, Y, B, C, U, V) in
control sequence.
pos
Position of an axis
ric
Direction part of an axis (first derivative of the axis polynomial
Axis(Path)), scaled to the arc length (Path).
d2
Second derivative of the axis polynomial Axis (Path), scaled to
the arc length (Path).
path
Path of the virtual master axis in mm.
Convention: In the calculation of the curve or arch length, mm is
set to be the same as degrees and either all axes should/have to
be involved or a 'fictive path' that contains the speed profile
should/have to be indicated. The path must not become smaller
than the Euclidean spacing of the points.
Fvalue
Optional indication of speed in mm/min related to the resulting
path.
This means that the virtual master axis path is travelled at the
speed Fvalue.
Example
AXZ Y
; Axis designator
5.16 G40 Deletion of the tool path correction /
milling cutter radius correction
Property
Topic
Position
Syntax
modal
Tool command
DEF
G40
Entering G40 will switch off all active milling cutter radius corrections (G41 - G44).
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
37
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5.17 G41 Tool path correction / Milling cutter
radius correction left
Property
Topic
Position
Syntax
modal
Tool command
--G41
The contour of a workpiece can only be machined if the radius of the tool used is
taken into account. Only the coordinates of the workpiece contour are programmed.
The control will calculate the tool path on the basis of the saved tool parameters.
With G41, the milling cutter radius correction takes place on the left from the
workpiece. The viewing direction is the direction of travel of the tool.
X
Y
38
n
After selecting the milling cutter correction (G41/G42), a G00 or G01 must be
programmed in the same or in the following block.
n
A change in the direction of compensation is only possible via G40.
n
It is not allowed the change the current plane of compensation (G17-G19).
Before selecting a different plane, you have to deselect the milling cutter
radius correction.
n
During compensation, no zero offset (G54-G59) may be programmed. The
active zero offset may not be changed when the milling cutter radius
correction has been selected.
Example
G00 X0 Y0
G41
G90
G00 X60 Y80
G01 X140 F2000
Y20
X60
Y80
Y100
G40
; Approach pre-position
; Switch on FRK
; Absolute measure programming is switched on
; Use fast jog to position at starting point A (X60, Y80)
; Line interpolation to point B (X140, Y80)
; Travel to point C (X140, Y20)
; Travel to point D (X60, Y20)
; Travel to point A (X60, Y80)
; Moving free
; Switch off FRK
5.18 G42 Tool path correction / Milling cutter
radius correction right
Property
Topic
Position
Syntax
modal
Tool command
--G42
n
After selecting the milling cutter correction (G41/G42), a G00 or G01 must be
programmed in the same or in the following block.
n
A change in the direction of compensation is only possible via G40.
n
It is not allowed the change the current plane of compensation (G17-G19).
Before selecting a different plane, you have to deselect the milling cutter
radius correction.
n
During compensation, no zero offset (G54-G59) may be programmed. The
active zero offset may not be changed when the milling cutter radius
correction has been selected.
The contour of a workpiece can only be machined if the radius of the tool used is
taken into account. Only the coordinates of the workpiece contour are programmed.
The control will calculate the tool path on the basis of the saved tool parameters.
With G42, the milling cutter radius correction takes place on the right from the
workpiece. The viewing direction is the direction of travel of the tool.
X
Y
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
39
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5.19 G43 Tool path correction / Milling cutter
radius correction up to
Property
Topic
Position
Syntax
modal
Tool command
--G43
With G43 active, the tool path is corrected up to the contour. When an interpolation
movement is carried out within the current plane, at the end of movement, the tool
centre in each axis is offset by the radius before the programmed end point. The
function G43 is mainly used for "approaching" the contour to be compensated.
With G43 active, only blocks containing linear movements (G00/G01) may be
programmed. Circles or circular arcs (G02/G03) are not allowed.
Example
G0 X-10 Y10
Z0
G1 F2000
G43
G42
G01 Y20
X50
Y-10
G40
; Approach pre-position
; Approach pre-position
; Activate G43
; Activate FRK
; Contour
; Contour
; Contour
; Deactivate FRK
40
5.20 G44 Tool path correction / Milling cutter
radius correction via
Property
Topic
Position
Syntax
modal
Tool command
--G44
With G44 active, the tool path is corrected via the contour. When an interpolation
movement is carried out within the current plane, at the end of movement, the tool
centre in each axis is offset by the radius behind the programmed end point. The
function G44 is mainly used for "approaching" the contour to be compensated. The
path condition can be canceled by the functions G40, G41 and G42.
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
With G44 active, only blocks containing linear movements (G00/G01) may be
programmed. Circles or circular arcs (G02/G03) are not allowed.
Example
G0 X-10 Y30
Z0
G1 F2000
G44
G42
G01 Y20
X50
Y-10
G40
; Approach pre-position
; Approach pre-position
; Activate G44
; Activate FRK
; Contour
; Contour
; Contour
; Deactivate FRK
MotionOne CM - G&M Code Programming Manual
41
5 G Functions: General explanations
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5.21 G50/G51/G52 PRESET
The command group G50-G52 is used to manage the position of fixed reference
points (PRESET) in the machine coordinate system. These find use, for example, in
the positioning and compensation of workpiece pallets, various different clamping
systems and measuring positions in the working area. This is also used to support
the differentiation of reference positions in the Manual and Automatic operation
modes. The structure and manner of operation of PRESET is comparable to that of
zero offsets. The zero offsets take effect cumulatively in addition to the active
PRESET offset.
In addition to the definition of offsets for all existing axes, PRESET also offers the
option of compensation of rotations of the clamping system with reference to the
machine system.
These angles are defined as rotations about the axes X, Y and Z axes. The centre of
rotation is the XYZ-vector from the offsets. Rotations in the PRESET system are
referred to as RCS1 (RCS – Rotated Coordinate System).
PRESET is activated in the G-Code program or in MDI with G51 and G52. PRESET
is cancelled by specification of another saved PRESET offset with G51 Pn, the reprogramming of G52 with another parameter list or by deletion of all offsets with G50.
No movement takes place after specification of G50-G52. But the display of the
current control position changes to the position with reference to the new system.
The changed coordinate system becomes immediately effective after the
specification; the same applies to the possibly specified angle.
MotionOne CM - G&M Code Programming Manual
42
5.22 G50 Deactivate PRESET
5.23 G51 Activate PRESET
Property
Topic
Position
Syntax
Property
Topic
Position
Syntax
modal
Setup command
--G50
G50 deactivates the existing PRESET offset. Offsets programmed with G52 are not
retained.
modal
Setup command
--G51<P>
P - A saved PRESET offset can be activated with G51 and the parameter P. The
parameter P indicates the number of the offset in the table. If G51 is shown without
the parameter P or with P0, then the saved SETPOS offset is activated.
NOTE
l
In the G&M-code program, G51 is always programmed without a
parameter. See G52 for the description of parameters for the
Preset table.
Example
G51 P2
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
;Activate entry G51 P2 of the Preset table
MotionOne CM - G&M Code Programming Manual
43
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5.24 G52 Program PRESET
Property
Topic
Position
Syntax
modal
Setup command
--G52 <Parameter list>
Parameters Description
X, Y, Z, …
(all existing axes) new zero point in the machine coordinates
H
Switch H is used to define the application of rotation WX, WY and
WZ. If H is not specified, H0 is applied.
H0
The rotations are defined by means of Euler angles or solid angles.
The angles are defined as follows:
- WX - Rotation around the current Z axis
- WY - Pivoting about the new Y axis
- WX - Rotation around the new Z axis
The rotations are always executed in this order, I, J and K must not
necessarily be specified. The specification of WX and WY is
normally sufficient.
H1
The angular positions are to be applied in a given order, which is
specified with I, J, and K. As a default the following order applies: I1
J2 K3.
Independent from the programmed order, the angles are specified
as follows with reference to the machine coordinate system:
- WX - Rotation around the X axis
- WY - Rotation around the Y axis
- WZ - Rotation around the Z axis
If a PRESET offset is to be defined in the G&M-code program, it must be specified
and activated with G52. Analogous to the zero offset, information on offsets and on
the angular position (RCS1) may be contained here.
44
Example of Euler
Parameters Description
Order of the rotations with H1 where the following applies:
- I is the position of the rotation WX around the X axis,
- J is the position of the rotation WY around the Y axis,
- K is the position of the rotation WZ around the Z axis.
If no order is specified, the following applies: I1 J2 K3.
If an order is specified for the rotation, all the defined angles must
be programmed with an information regarding the order. For H0
and H2 it is not necessary to specify an order.
I, J, K
G52 X200 Y150 Z50 C30 H0 WY=1.2 WX=3.4
Example of order
G52 X200 Y150 Z50 C30 H1 WY=1.2 WZ=3.4 J2 K1
The defined angles define rotations in the stationary machine
coordinate system. The order is therefore not to be specified. An
angle defined with WX rotates the coordinate system around the
not-turned X axis of the machine system, no matter if other rotations
already apply.
- WX - Rotation around the existing X axis
- WY - Rotation around the existing Y axis
- WZ - Rotation around the existing Z axis
H2
WX, WY, WZ
These parameters contain the angles to be set. Parameter H
controls how to calculate these angles to reach the new position.
NOTE
l
The angular position of the machine coordinate system can be
changed using G51 and G52. The programmed movements are
therefore no longer necessarily carried out on the axes which
actually exist, but are instead composed of the movements of
several axes whereby directional changes are possible as well.
This applies also to the manual mode and MDI.
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
45
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5.25 Zero offset and coordinate rotation
The zero offset makes it possible to move the program or workpiece zero to any
desired position within the control range. After a zero offset, all programmed
positions are re-referenced to this new point. The following zero offsets are
available:
n
SETPOS function in the user interface
n
PRESET function G50 - G52
n
RCS1 clamping position correction based on PRESET
n
Saved zero point offset G54-G59
n
Programmable absolute zero offset G93
n
RCS2 clamping position correction based on zero offsets
n
Programmable relative zero offset G92
n
Programmed rotation with G92 W or G26
G54
...... ......
G59
G93
G92
+
G53
SETPOS
G52
+
G51
G50
Bild 4.2: Zero offset and coordinate rotation
46
5.26 G53 Deletion of the zero offset
Property
Topic
Position
Syntax
modal
Setup command
DEF
G53
G53 will switch off all zero offsets.
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
47
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5.27 G54 - G59 zero offset and coordinate
rotation
Property
Topic
Position
Syntax
modal
Setup command
--G54 - G59 <zero point> P0 – P99 <zero point page>
Use G54 – G59 P0 – P99 to call up saved zero offsets. All of the parameters
described in the following are not called in the G&M-code program, but are instead
to be entered in the zero point table.
Parameters Description
X, Y, Z, A, B,
(all existing axes) new zero point in the machine coordinates
C
Rotation
RCS 0 - OFF / 1 – ON (RCS2 rotation)
H
Switch H is used to define the application of rotation WX, WY and
WZ. If H is not specified, H0 is applied.
H0
The rotations are defined by means of Euler angles or solid angles.
The angles are defined as follows:
- WX - Rotation around the current Z axis
- WY - Pivoting about the new Y axis
- WX - Rotation around the new Z axis
The rotations are always executed in this order, I, J and K must not
necessarily be specified. The specification of WX and WY is
normally sufficient.
H1
The angular positions are to be applied in a given order, which is
specified with I, J, and K. As a default the following order applies: I1
J2 K3.
Independent from the programmed order, the angles are specified
as follows with reference to the machine coordinate system:
- WX - Rotation around the X axis
- WY - Rotation around the Y axis
- WZ - Rotation around the Z axis
NOTE
l
48
In the G&M-code program, G54 – G59 P0 – P99 are always
programmed without parameters. The following description of
parameters refers to the zero offset table.
Further examples
Parameters Description
I, J, K
H2
ANG
Order of the rotations with H1 where the following applies:
- I is the position of the rotation WX around the X axis,
- J is the position of the rotation WY around the Y axis,
- K is the position of the rotation WZ around the Z axis.
If no order is specified, the following applies: I1 J2 K3.
If an order is specified for the rotation, all the defined angles must
be programmed with an information regarding the order.
The defined angles define rotations in the stationary machine
coordinate system. The order is therefore not to be specified. An
angle defined with WX rotates the coordinate system around the
not-turned X axis of the machine system, no matter if other rotations
already apply.
- WX - Rotation around the existing X axis
- WY - Rotation around the existing Y axis
- WZ - Rotation around the existing Z axis
(only P3) Rotation of the coordinate system on the current plane
Example
Example of Euler
Example of order
Example of cancellation
Example of cancellation
G55 P3 ;Activate zero offset G55 P3
G54 (X200 Y150 Z50 C30 H0 WY=1.2 WX=3.4)
G54 (X200 Y150 Z50 C30 H1 WY=1.2 WZ=3.4 J2 K1)
G53
G93 X100
Description
G54-G59 or G54-G59 P0-P99 define the position of the workpiece in the machine
system. Translatory and rotatory offsets and data on the clamping position can be
saved. No movement takes place after specification of G54-G59 or G54-G59 P0P99. But the display of the current control position changes to the position with
reference to the new system. The changed coordinate system becomes immediately
effective after the specification; the same applies to the possibly specified angle.
G54-G59 or G54-G59 P0-P99 is activated in the G-Code program or in MDI. G54G59 or G54-G59 P0-P99 is cancelled by specification of another absolute zero point
offset with G54-G59 or G54-G59 P0-P99, or by deletion of all offsets with G53.
NOTE
l
l
The angular position of the programming coordinate system can
be changed using G54-G59 or G54-G59 P0-P99. The
programmed movements are therefore no longer necessarily
carried out on the axes which actually exist, but are instead
composed of the movements of several axes whereby directional
changes are possible as well. This applies also to the manual
mode and MDI.
None of the programmed rotations is deactivated when the plane
is changed.
Example
G55 P1
The angle programming by WX, WY and WZ is to be preferred in any case over the
plane-dependent rotation with parameter W. The rotation of program parts, however,
should be realized with G26 or G92.
Programming G93 without parameters deactivates the compensation of the
clamping position and deletes the old angle specifications. The offsets of the
individual axes in effect are not changed.
Zero offset
The command is used for programming of an absolute zero offset for all translatory
and rotatory axes. The workpiece zero is moved to a certain absolute position in the
working area.
;Activate entry G55 of the zero offset table Bank 1
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
49
5 G Functions: General explanations
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
Coordinate rotation
Besides the specification of offsets in G54-G59 or G54-G59 P1-P2 for all axes, also
rotations in the active plane can be defined in G54-G59 P3 by using the parameter
ANG. The centre of rotation is the specified or already active zero point. Following
changes of the zero point effect a cancellation of the rotation.
Activation of the offsets in G54-G59 or G54-G59 P1-P2 is accomplished via input
field ‘RCS’ and the value of 1.
RCS
As an alternative to W (P3) there is the possibility to compensate the clamping
position by specification of the angular deviation which was measured during the
setup. It is also called the RCS function. These specifications refer to the clamping
position and therefore do not depend on the plane definition or can be changed by
them. Switch H is used to define the application of rotation WX, WY and WZ. The
order of the individual parameters in the G&M code has no effect on the order of the
rotations.
Rotations in the system of the zero offsets G54-G59 and G93 are called RCS2 (RCS
– Rotated Coordinate System).
MotionOne CM - G&M Code Programming Manual
50
5.28 G60 Exact stop on
Property
Topic
Position
Syntax
modal
Setup command
--G60
Example
G00 X0 Y0
;Move to starting point
G60
;Activate exact stop
G01 X3 F4000
;Exact stop at X3, Y0
G01 X2.293 Y0.707 F1500
;Exact stop at X2.293, Y0.707
G01 X0.707 F2000
;Exact stop at X0.707, Y0.707
G01 X0 Y0 F4000
;Exact stop at X0, Y0
M30
;End of program
After the exact stop has been enabled, an exact stop is made after all contour
movements (G01, G02, G03, G05, G30, G305) so that the end position is reached
with precision. This means that the speed is braked to zero before the next contour
element is processed so that there is no slurring of the contour. This also causes
jerky behaviour during travel, however In contrast to positioning at fast jog speed,
the maximum speed of the individual movements can be defined explicitly with an
exact stop. Circular movements and splines are also possible.
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
51
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5.29 G61 Exact stop off
Property
Topic
Position
Syntax
modal
Setup command
DEF
G61
When exact stop is disabled in the controller, the determination of the speed curve
within a contour is carried out by the controller. The controller tries to achieve the
speed of the following contour element already at the transition between the contour
elements while adhering to limit values so that a continuous travel behaviour is
achieved. This can possibly result in slurring of the contour. The fundamental
procedure employed by the controller here is referred to as Look Ahead. .
Example
G00 X0 Y0
;Move to starting point
G61
;Deactivate exact stop
G01 X3 F4000
;No exact stop at X3, Y0
G01 X2.293 Y0.707 F1500
;No exact stop at X2.293, Y0.707
G01 X0.707 F2000
;No exact stop at X0.707, Y0.707
G01 X0 Y0 F4000
;Exact stop at X0, Y0, because contour end
M30
;End of program
52
5.30 G70 Units of measurement in inches (inch)
Property
Topic
Position
Syntax
modal
Setup command
--G70
The measures given are in inch. At the end of the program, the home position is
always restored. In the home position, the default is always G71 (mm).
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
5.31 G71 Units of measurement in millimetres
(mm)
Property
Topic
Position
Syntax
modal
Setup command
DEF
G71
All measures given are in mm. In the home position, the default is always G71 (mm).
MotionOne CM - G&M Code Programming Manual
53
5 G Functions: General explanations
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5.32 G72 Deletion of mirror image machining
and scaling
Property
Topic
Position
Syntax
modal
Setup command
DEF
G72
A mirror image machining and / or a scaling of the coordinates system is cancelled.
MotionOne CM - G&M Code Programming Manual
54
5.33 G73 Mirror image machining
X
Property
Topic
Position
Syntax
modal
Setup command
-G73 Axis designator [-1][+1]
Y
X-1
W
The sign of the programmed dimensional value of an axis can be inverted by mirror
image machining. For example, a sign inversion of the X axis is a mirror imaging on
the Y axis, if machining takes place in the XY plane. Mirror image machining does
Y-1
not involve a reflection of zero point offsets. During mirror imaging on one axis only,
the control will interchange:
n
the sign of the coordinates of the mirror imaged axis,
n
the direction of rotation during circular interpolation (G02/G03),
n
the machining direction during the milling cutter radius correction (G41/G42).
Example
G73 X-1 Y-1
; The coordinate system is mirror imaged on the X
and Y axes
Mirror imaging is cancelled:
n
by the path condition G72, which will cancel the inversion of all axes
(reflection is deleted).
n
by a G73 block, the address of the axis and the value +1. In this case, only
the mirror imaging of the programmed axis is cancelled.
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
55
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5.34 G73 Scaling
Property
Topic
Position
Syntax
modal
Setup command
-G73 <Parameter list>
X
Y
The coordinate values of the linear axes of the control can be increased or
decreased by a scaling factor. The reference point is the origin of the coordinate
system, which will affect in general not only the shape of the workpiece but also its
position on the clamping table. The programmed zero offset values will also
experience a change in scale. Scaling only refers to the axes of the active plane.
The value programmed under "W" is a scaling factor. This means that values greater
than 1 will result in an increase in scale and values smaller than 1 in a decrease in
scale.
A scaling will be cancelled by:
n
a block containing G72. In this case, any mirror image machining that may be
active will be cancelled.
n
A block containing G73 and W1.0.
Example
G73 W1.5
; The current plane (XY) is scaled by 50%
(increased)
56
5.35 G79 Cycle execution
Property
Topic
Position
Syntax
not modal
Cycle command
--G79 <Axis positions>
The function G79 executes a previously defined cycle. When the function is called
without any additional parameters, the cycle will start at the position at which the
individual axes are positioned. In addition, execution parameters can be specified.
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
57
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5.36 G90 Absolute measure
5.37 G91 Relative measure
Property
Topic
Position
Syntax
Property
Topic
Position
Syntax
modal
Setup command
DEF
G90
58
modal
Setup command
--G91 <Parameter list>
When an absolute measure is entered, all measures given refer to a fixed zero point.
When entering a relative measure (incremental measure), the numeric value of the
This zero point is always the zero point of the control. The associated numeric value
of the path information describes the target position in the coordinate system. The
function is effective modally. The traverse distance is calculated from the target
coordinates and the current position.
path information corresponds to the traverse distance. The programmed sign
determines the direction of travel. It is possible to switch between absolute measure
input and relative measure input in the program any number of times.
B
B
X
C
X
C
A
x
D
Y
A
140
D
Y
Z
140
Z
60
80
20
60
y
80
20
x = 80
y = 60
5.38 G92 Relative zero point offset and
coordinate rotation
Example - Zero offset
Property
Topic
Position
Syntax
Example - Coordinate rotation
modal
Setup command
--G92 <Axis position> <Rotation>
G92 X11.3 Y30
G92 W-10.5
; Coordinate system offset by 11.3 mm (relative)
; Rotation of the coordinate system by -10.5
degrees (relative)
Description
G92 moves the position of the zero point by the values specified in the current
coordinate system. If the path condition G92 is called several times in a parts
program, the offset vectors add up. Translatory and rotatory offsets and data on the
rotation in the main plane can be programmed.
Parameters
Description
X, Y, Z, …
(all existing axes) new zero point in the machine coordinates
W
Rotation of the coordinate system on the current plane
NOTE
l
l
The angular position of the programming coordinate system can
be changed using G92. The programmed movements are
therefore no longer necessarily carried out on the axes which
actually exist, but are instead composed of the movements of
several axes whereby directional changes are possible as well.
This may also apply to manual mode and MDI depending on the
configuration of the control.
The rotation defined with W is not deactivated when the plane is
changed.
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
No movement takes place after specification of G92. But the display of the current
control position changes to the position with reference to the new system. The
changed coordinate system becomes immediately effective after the specification;
the same applies to the possibly specified angle.
The programmable rotation is handled like a command for the definition of a free
plane (G26). All All previous rotations are kept if G92 W.. is specified, thus the
current plane is turned further. Relative rotations which are programmed with "G26 ..
R1", are also additive, that means the already turned system is turned further. The
G26 command offers many more ways to specify rotations and therefore is to be
preferred over the specification of G92.
G92 is activated in the G-Code program or in MDI. G92 is cancelled by the
specification of another absolute zero point offset with G54-G59 and with G93 with
another parameter list, by deletion of all offsets with G53, and by programming of a
free plane or cancellation of all rotations by G26.
Zero offset
The command is used for programming of an absolute zero offset for all translatory
and rotatory axes. The workpiece zero is moved to a certain absolute position in the
working area.
MotionOne CM - G&M Code Programming Manual
59
5 G Functions: General explanations
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
Coordinate rotation
Besides the specification of offsets for all axes, also rotations in the active plane can
be defined by using parameter W. The centre of rotation is the specified or already
active zero point. Positive angles of rotations will rotate the programmed path anticlockwise, negative ones clockwise.
Cancellation of the zero offset and rotation
Cancellation of the zero offset and rotation G53, G54-59, G93 Cancellation of the
rotation
Cancellation of the rotation
G26
MotionOne CM - G&M Code Programming Manual
60
5.39 G93 Absolute zero point offset and
coordinate rotation
Property
Topic
Position
Syntax
modal
Setup command
--G93 <Parameter list>
G93 defines the absolute position of the workpiece in the machine system.
Translatory and rotatory offsets and data on the clamping position can be
programmed.
Parameters
X, Y, Z, …
Description
(all existing axes) new zero point in the machine coordinates
W
Rotation of the coordinate system on the current plane
H0
The rotations are defined by means of Euler angles or solid
angles. The angles are defined as follows:
- WX - Rotation about the current Z axis
- WY - Pivoting about the new Y axis
- WZ - Rotation about the new Z axis
The rotations are always executed in this order, I, J and K must
not necessarily be specified. The specification of WX and WY is
normally sufficient.
G93 with parameters cancels the programmable zero point offset G54-G59 and any
previous G93 offsets.
G93 without parameters is ineffective. To delete the programmed offsets and
rotations, G53 can be used.
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
61
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
Parameters
NOTE
Description
l
H1
I, J, K
H2
62
The angular positions are to be applied in a given order, which is
specified with I, J, and K. As a default the following order applies:
I1 J2 K3. Independent from the programmed order, the angles
are specified as follows with reference to the machine coordinate
system:
- WX - Rotation around the X axis
- WY - Rotation around the Y axis
- WZ - Rotation around the Z axis
l
The angular position of the programming coordinate system can
be changed using G93. The programmed movements are
therefore no longer necessarily carried out on the axes which
actually exist, but are instead composed of the movements of
several axes whereby directional changes are possible as well.
This applies also to the manual mode and MDI.
None of the programmed rotations is deactivated when the plane
is changed.
Order of the rotations with H1 where the following applies:
- I is the position of the rotation WX around the X axis,
- J is the position of the rotation WY around the Y axis,
- K is the position of the rotation WZ around the Z axis.
If no order is specified, the following applies: I1 J2 K3. If an order
is specified for the rotation, all the defined angles must be
programmed with an information regarding the order. For H0 and
H2 it is not necessary to specify an order.
Example
The defined angles define rotations in the stationary machine
coordinate system. The order is therefore not to be specified. An
angle defined with WX rotates the coordinate system around the
not-turned X axis of the machine system, no matter if other
rotations already apply.
- WX - Rotation around the existing X axis
- WY - Rotation around the existing Y axis
- WZ - Rotation around the existing Z axis
No movement takes place after specification of G93. But the display of the current
control position changes to the position with reference to the new system. The
changed coordinate system becomes immediately effective after the specification;
the same applies to the possibly specified angle.
Example of Euler:
G93 (X200 Y150 Z50 C30 H0 WY=1.2 WX=3.4)
Example of order:
G93 (X200 Y150 Z50 C30 H1 WY=1.2 WX=3.4 J2 K1)
Example of cancellation:
G53 G54-59 again G93
Description
G93 is activated in the G-Code program or in MDI. G93 is cancelled by specification
of another absolute zero point offset with G54-G59, the re-programming of G93 with
another parameter list or by deletion of all offsets with G53.
The angle programming by WX, WY and WZ is to be preferred over the planedependent rotation with parameter W. The rotation of program parts, however,
should be realized with G26 or G92.
5.40 G94 Speed programming
Zero offset
The command is used for programming of an absolute zero offset for all translatory
and rotatory axes. The workpiece zero is moved to a certain absolute position in the
working area.
Coordinate rotation
Property
Topic
Position
Syntax
Besides the specification of offsets for all axes, also rotations in the active plane can
be defined by using parameter W. The centre of rotation is the specified or already
active zero point. Following changes of the zero point effect a cancellation of the
rotation.
Depending on whether the dimensions are set by the path conditions G70 or G71,
the feed speed is programmed in mm/min (degrees/min) or inches/min (degree/min).
The function is automatically switched on when a G-Code program is loaded and is
RCS (Rotated Coordinate System)
modal
Setup command
--G94 <Parameter list>
effective modally. G94 can be cancelled by the path condition G95.
As an alternative to W there is the possibility to compensate the clamping position by
specification of the angular deviation which was measured during the setup. It is
also called the RCS function. These specifications refer to the clamping position and
therefore do not depend on the plane definition or can be changed by them. Switch
H is used to define the application of rotation WX, WY and WZ. The order of the
individual parameters in the G&M code has no effect on the order of the rotations.
Rotations in the system of the zero offsets G93 are called RCS2 (RCS – Rotated
Coordinate System).
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
63
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5.41 G95 Time programming
Property
Topic
Position
Syntax
modal
Setup command
--G95 <Parameter list>
With the function G95 time programming, the machining time can be determined for
a programmed path route. This is worthwhile when axes with different speed
behaviours (e.g. linear axis and rotational axis) are involved in a movement. The
feed speed using F-word is then no longer programmed (G94) in mm/min
(inches/min) as is usual but a code word calculated by the specified time (inverse
time programming) needs to be programmed in which this movement is to be
processed. From the resulting machining time, the control calculates the required
path speed for this, taking into account threshold values path velocity. If no new Fword is programmed in a block with a traverse movement, the F-word of the
preceding block is used. The function is modally effective and can be deleted by the
path condition G94. With G95 active, only blocks with G01 may be programmed. G00
commands are programmed as with G94 with the 'rapid movement automatic speed'.
64
Two different INVERSE TIME programming times can be used:
Normal Inverse Time (NIT)
Normal Inverse time programming
Extended Inverse Time (EIT)
Extended Inverse time programming. EIT must allow be used when during the
calculation of the code word via NIT a value less than '1' results (see example). All
handovers from the G&M code can be handed over in float format. Normally,
however, the integer format is used.
Procedure with EIT programming:
If the ratio feed/path is smaller than 1, calculate the E-value (Increase multiplication
factor in 10 increments until the ratio is greater 1. The E-value is set to 10000 as a
standard feature). Then determine the relevant F-value with the E-value determined
in this way. EIT is always programmed with a negative preceding sign (*-1024).
F
F
(NIT)
(EIT)
=
N - Wert
t
=
N - Wert * Vorschub (mm/min)
Verfahrweg (mm)
=
E - Wert
t
=
E - Wert * Vorschub (mm/min)
Verfahrweg (mm)
* -1024
The following address letters are used for definition:
Letter
Description
N
The N-value is optional and denotes the multiplication factor for NIT. If
the N-value is not programmed, the multiplication factor is set to 1.0.
E
The E-value is optional and denotes the multiplication factor for EIT. If
the E-value is not programmed, the multiplication factor is set to
10000.0.
5.42 G107 Eroding: Define the directional
vector for the lift-off movement
Property
Topic
Position
Syntax
modal
Eroding command
--G107 <Parameter list>
The command G107 can be used to define a direction vector for the lift-off movement
during eroding.
Example
T1 M6
S2000 M3
G00 Z10
G95 E1
;Switch on EIT (multiplication factor = 1)
G01 Z-11.999 A19 C0 F-204800
X70.003 Y-3.547 A19 C0 F-2165142
X69.85 Y-2.689 A19 C0 F-2186417
X69.551 Y-1.871 A19 C0 F-2186756
X69.114 Y-1.117 A19 C0 F-2185486
X68.553 Y-0.45 A19 C0 F-2185632
NOTE
l
Please note that any defined transformations (e.g. G26) must be
taken into consideration.
Definition for the call in the G&M code:
Axis
X, Y, Z, … U, W, V
A0=, A1=, … A15=
Description
Standardized parts of the CNC axes for the lift-off
movement with a vector. The lift-off path is defined with
G1001 Bxx..
Example
G107 X0 Y0 Z1
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
65
5 G Functions: General explanations
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5.43 G181 Probe calibration
Property
Topic
Position
Syntax
not modal
Cycle command
--G181 <Parameter list>
Emptying of the content of log files:
Emptying of the file 'andronin.log'. The content of the specified log file, but not the file
itself, is deleted.
Other meanings of the address D.
D1
Emptying of the mprot.log (ASCII)
MotionOne CM - G&M Code Programming Manual
66
5.44 G190 Absolute circle centre
Property
Topic
Position
Syntax
Example
modal
Setup command
DEF
G190 <Parameter list>
The dimensions for the circle centre can be given either in absolute or incremental
coordinates. One of the two functions is set automatically via the system
configuration. G190 and G191 are active only when G90 is also active. If G91 is
G90 G00 X-15 Y60 Z10
G41
G01 X0 Y50
G01 X50
G190
G02 X80 Y20 I50 J20
G01 Y-10
G40
active, the circle centre is relative anyway, and the status of G190/G191 becomes
meaningless. If G190 is active, the circle centre will be entered in absolute
coordinates. This means that programming is done analogously to straight line
interpolation from the zero point of the control.
X
D=20
10
Y
Z
80
I=50
J=20
50
10
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
67
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5.45 G191 Relative circle centre
Property
Topic
Position
Syntax
Example
modal
Setup command
--G191 <Parameter list>
If G191 is active, the circle centre can be programmed as the distance from the
starting point of the circle.
X
D=20
10
Y
Z
80
I=0
J=-30
50
10
G90 G00 X-15 Y60 Z10
G41
G01 X0 Y50
G01 X50
G191
G02 X80 Y20 I0 J-30
G01 Y-12
G40
68
5.46 G288 Set Look Ahead parameters
Letter
NOTE
l
When programming "G70 - Dimensions in inch", all lengths given
in µm are evaluated in 1/10000 inch.
5.46.1 G288,0 LookAhead basic parameter
Property
Topic
Position
Syntax
modal
Setup command
--G288 <Parameter list> or G288,0 <Parameter list>
This command allows the LookAhead parameters to be changed from the G&M
code. The LookAhead parameters cannot exceed the limit values in the in the
MotionCenter. In addition, it is possible to change individual parameters. A
parameter that has the value -1 resets it to the predefined values in MotionCenter.
NOTE
l
The following address letters are used for definition:
A detailed description you can find in the Look Ahead
documentation.
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
Description
R
Feed rate [mm/min]
D
Rapid traverse speed [mm/min]
E
Quality of input data [μm]
H
Contour precision [μm]
K
Smoothing of contour [ms]
N
Max. acceleration [m/s2 ]
O
Jerk limit acceleration [m/s3 ]
X
Jerk limit X-axis [m/s3 ]
Y
Jerk limit Y-axis [m/s3 ]
Z
Jerk limit Z-axis [m/s3 ]
A
Jerk limit A-axis [m/s3 ]
B
Jerk limit B-axis [m/s3 ]
C
Jerk limit C-axis [m/s3 ]
MotionOne CM - G&M Code Programming Manual
69
5 G Functions: General explanations
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5.47 G305 P5 interpolation (online polynomials)
NOTE
l
The G-code G305 is described thematically in association with
G30 Spline Interface (Online spline).
See Abschnitt "G305 P5 interpolation (online polynomials)" auf
Seite 36
MotionOne CM - G&M Code Programming Manual
70
5.48 G488 Simple measurement block
Property
Topic
Position
Syntax
not modal
Cycle command
--G488 <Parameter list>
The cycle G488 Simple measurement block is used for determining the switching
point of a selected control axis (axis numbers 0 to 15) in a selected plane
(G17/G18/G19) or the axis combination X Y Z.
The G&M-code cycle is not executed until a "touch probe" tool type (tool
management) that has been clamped in the spindle is detected as active tool.
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
The following address letters are used for definition:
Letter
Description
A
Axis number used for carrying out the measurement.
Single-axis 0-15
Two-axis 17-19
Multi-axis 900+axis code word (AKW)
(Example Z axis - A2, XY plane - A17, X-Y and Z axis - A914 only)
X
Search path: Specifies the relative axis movements of the axis or axes
selected by means of the address [A]. If an axis is to carry out no
movement at all, a relative path of 0 must be entered.
Y
see X
Z
see X
B
Positioning feed
E
Measuring feed
I
Repeat measurements: Specifies the repeat measurements. Each
measurement is carried out again from the start position.
K
Averaging method: Calculation method for determining the
measurement result.
C
Activate Point log
C0 - Protocol output disabled (Default)
C1 - Protocol version 1
C2 - Protocol version 2
R
Starting position: After completion or interruption of the measurement, a
retraction to the starting position will take place.
R1 - moved back to starting position
R2 - moved back to measuring position
MotionOne CM - G&M Code Programming Manual
71
5 G Functions: General explanations
Z
Y
X
72
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
Axis
Decimal
HEX
Axis
Decimal
HEX
A
1
1
X´
256
100
X
2
2
Y´
512
200
Z
4
4
P
1024
400
Y
8
8
Q
2048
800
B
16
10
R
4096
1000
C
32
20
U
8192
2000
D
64
40
V
16384
4000
E
128
80
W
32768
8000
The binary value produces 14 decimally (axis code word of the axes X, Y and Z)
Example
Procedure
G488 A1 X30 Y0 Z-30 B1000 E300 I5 K0 C0 R1
G79
NOTE
l
To determine the axis code, the program WINAKW.exe in the
directory C:/andron/tools or the following table in which the
example is shown for the axes X, Y and Z can be used.
For more on this, see also Abschnitt "General definitions" auf Seite
11 on the topic of axis code word.
Procedure Movement
Feed
1.
Probe 1st corner →
Measuring feed
2.
Moving free on 1st corner ←
50 mm/min
3.
Probe 1st corner → (measurement result)
10 mm/min
4.
Moving free on 1st corner ←
50 mm/min
5.
If desired: Positioning to the start position /
position measurement result
Positioning feed
Measurement log 1
Saving the measuring log
Axis number with which the measurement was carried out, result of the
measurement depending on the input surface or ball centre (for the axis with the axis
number or depending on the level of the X-axis), result of the measurement
depending on the input surface or ball centre (for the Y-axis), result of the
measurement depending on input surface or ball centre (for the Z-axis), starting
position (for the axis with the axis number of depending on the level of the X-axis),
starting position (for the Y-axis), starting position (for the Z-axis).
The measurement log is saved as standard under:
Maximum measurement value (for the axis with the axis number or depending on
the level of the X-axis), maximum measurement value (for the Y-axis), maximum
%andronroot%\SystemData\Repository\Local Control\Measuring Protocol
The storage location or storage path can be changed via G23.
Communication variables for FlexProg - G488 Simple measurement block
IKV variable
Meaning
IKV [2000]
Cycle number
IKV [2001]
Extended cycle number
IKV [2002]
Tool number
IKV [2003]
Axis number used for carrying out the measurement
IKV [2004]
Number of repeats
IKV [2005]
Averaging method
IKV [2006]
Radius calculation
IKV [2007]
Point log activated
Measurement log 2
IKV [2008]
Calculate touch probe transformations from G181
X probe position depending on input surface or ball centre, Y probe position
depending on input surface or ball centre, Z probe position depending on input
surface or ball centre, tool diameter from the tool management, tool length from the
tool management, tool number, calculate radius? 1 = YES, calculate measuring
probe transformations from G181? 1=YES, move back to start position? 1=YES
IKV [2009]
Retract to the start position / measuring position
measurement (for the Z-axis), minimal measurement value (for the axis with the axis
number or depending on the level of the X-axis), minimum measurement value (for
the Y-axis), minimal measurement value (for the Z-axis), minimal measurement
value leap (for the axis with the axis number or depending on the level of the X-axis),
maximum measurement value leap (for the Y-axis), maximum measurement value
leap (for the Z-axis), number of repetitions, measurement number, notification
method, tool diameter from the tool administration.
Tool length from the tool administration, tool number, calculate radius, point protocol
activated, calculate probe transformations from G181, move back to start position /
measurement position
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
73
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
FKV Variable
Meaning
74
5.49 G488,1 Simple measurement block
FKV [2000]
Measurement result depending on the input for surface or sphere
centre (for the axis carrying the axis number
FKV [2001]
Measurement result depending on the input for surface or sphere
centre (for the Y-axis)
Property
Topic
Position
Syntax
FKV [2002]
Measurement result depending on the input for surface or sphere
centre (for the Z-axis)
The measuring cycle G488,1 is a reduction of cycle G488. That means, this cycle
FKV [2003]
Start position (for the axis carrying the axis number or depending
on the plane of the X-axis)
FKV [2004]
Start position (for the Y-axis)
FKV [2005]
Start position (for the Z-axis)
FKV [2006]
Maximum measured value (for the axis carrying the axis number
or depending on the plane of the X-axis)
does not check whether an erosion control has been selected or a probe has been
replaced. In addition, the cycle will stop at the current position after the first
measurement, so that the measurement signal is still present. This means, for
example, that movement to starting position (R2) is not possible. Also several
measurements simultaneously (e.g. I2) are not possible. The program is closed with
a corresponding error message. Apart from these restrictions, the meaning of the
parameters remains identical to cycle G488.
FKV [2007]
Maximum measured value (for the Y-axis)
In addition, there is the parameter J.
FKV [2008]
Maximum measured value(for the Z-axis)
FKV [2009]
Minimum measured value (for the axis carrying the axis number
or depending on the plane of the X-axis)
FKV [2010]
Minimum measured value (for the Y-axis)
FKV [2011]
Minimum measured value (for the Z-axis)
FKV [2012]
Maximum measured value jump (for the axis carrying the axis
number or depending on the plane of the X-axis)
FKV [2013]
Maximum measured value jump (for the Y-axis)
FKV [2014]
Maximum measured value jump (for the Z-axis)
FKV [2015]
Tool diameter from tool management (WZV)
FKV [2016]
Tool length from the TM
not modal
Cycle command
--G488,1 <Parameter list>
Parameters Description
J
Level of the measurement signal
J0 – The measurement signal is ‘low-active’, meaning that the
measurement is made on the falling edge of the signal
J1 – The measurement signal is ‘high-active’, meaning that the
measurement is made on the rising edge of the signal
5.50 G581 Continuous operation rotation
Property
Topic
Position
Syntax
not modal
Cycle command
--G581 <Parameter list>
Parameters Description
N
Speed of the selected axis in revolutions/minute. The sign
determines the direction of rotation of the axis.
H
0: The speed can be influenced via the integer manual parameter
3.
1: It is not possible to influence the speed.
2: The speed can be restricted via the feed potentiometer if
necessary.
Cycle G581 is used for the continuous rotation of the rotary axes at a defined speed.
Other axis travels (e.g. in the X, Y and Z axis directions) can be programmed
independently of this rotary motion. The continuous operation is stopped
automatically at the end of the program. The command will not be executed during
block search. A continuous operation axis started by the command G581 may not
participate in any other motion for the duration of the continuous operation. By
default, the rotary speed cannot be affected by the feed potentiometer. However, the
behaviour can be adapted using parameter H.
The following address letters are used for definition:
Parameters Description
A
Axis selection: This input selects (1) or deselects (0) the
corresponding axis.
B
see A
C
see A
N - ...
N + ...
Example:
G581 A1 B0 C1 N30
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
75
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5.51 G781,1 Spindle offset
Property
Topic
Position
Syntax
modal
G&M command
--G781,1 N<Offset number> X<Offset in X> Y<Offset in Y> Z<Offset
in Z>
A<Offset in A> B<Offset in B> C<Offset in C>
G781,1 N<Offset number> K<Axis code>
G781,1 I<IKV index>
Address
N
-1 to 254
X, Y, Z
A, B, C
K
Alternatively to entering the axis addresses XYZABC
directly, the offset can also be entered via a list of FKV and
a decimal axis code. First of all here, all required values
must be assigned FKV[axis number] = offset for axis and
then
G781,1 N<offset number> K<axis code> must be called
up. (For determining the axis code, see: Abschnitt
"General definitions" auf Seite 11 - axis code)
0 - 65535
I
IKV index in G&M-code program for returning the active
spindle offset number. Parameter I can be used
individually or together with N, X, Y or Z. (Example: 21 for
IKV[21])
0 - 1000
G781,1 causes no movement, but, in case of activation, results in a jump in the
position indication of the control system. After specifying, the new guiding point is
immediately active.
To check the active spindle offsets, the number can be read out and verified in
FlexProg.
Offset number: The parameter N is used to establish the
offset number.
N is an obligatory parameter.
N-1 deletes the offset that was valid before.
N0 to N254 are valid offset numbers.
Range
Offset: XYZABC are used to specify the offset of the
guiding point. The vector applies from the guiding point of
the main spindle without offset to the guiding point of the
loaded spindle.
Every offset, including that of individual axes, deletes any
offset that was previously in force. Individual offsets can be
deleted by specifying offset ZERO. All offsets will be
deleted by entering N-1.
The spindle offset is used for offset definition of the tool system. It offsets the guiding
point of the control system by the vector specified.
G781,1 is usually programmed after replacement of a spindle when this replacement
has to influence the guiding position of the control system. The offsets remain
effective after switching off. During switch on, spindle offset is activated with
referencing. Cascaded specifications for the offsets are not possible. The offset is
always specified absolutely.
Command
76
Activation
G781,1 is activated/deactivated in the G&M-code program or in MDI.
NOTE
l
An offset applies in all operation modes and is retained after
being switched off.
Status indicator
SPI
Offs
The current status of the spindle offset is displayed in the status area of
the position menu.
Example:
G781,1 N0 X10
; Offset tool system for offset number 0 in X by 10 mm,
offsets previously in force in Y and Z will be deleted
G781,1 N0 X10 Y20 Z20
;Offset tool system for spindle 0 in X, Y and Z
G781,1 I25
;Write number of active spindle offset to IKV[25]
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
77
5 G Functions: General explanations
5.52 G783,0 Read/Write zero offset
Property
Topic
Position
Syntax
modal
Special command
--Write to the zero offset table:
G783,0 <Parameter list>
Parameters
Description
K
Axis number: To read and write further axes, as an alternative to
the direct axis address (X,Y,Z,A,B,C), the andronic axis number can
be used. or
Address of the parameter: To be able to write the value to the zero
offset table, the value for further axis or parameters must have been
transmitted to a separate parameter “L <Value of the
axis/parameter>”.
L
Transmitting the zero point to the zero offset table. This parameter
is only used when writing to the zero offset table and using the
parameter “K <axis number of the universal axis>”
R
Index of the target variable to which the zero point is to be written.
Allowed range FKV[2000] - FKV[2199] This parameter is only used
when reading from the zero offset table.
G783,0 can be used for:
n
activating zero points,
n
reading data from the currently active zero offset table and using them in the
G&M-code program or
n
78
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
writing G&M-code program data in the zero offset table.
The following address letters (parameters) are used for definition:
Parameters
Description
NOTE
O
Number of the desired zero point.
N
Page of the zero offset table. If N is not used, the first page applies.
D
Action:
0 - Activate zero point
5 - -Write
9 - Read
l
X, Y, Z,
A, B, C
Write action: The transmitted value is entered to the zero point of
the relevant axis.
Read action: Enter value "zero"! (The value is not evaluated, only
the address is used.)
When programming “G70 – Dimensions in inches” all linear mm
dimensions are evaluated as inch values.
Axis
K
Axis
K
Address
K
A
0
X´
8
ANG
16
X
1
Y´
9
RCS
17
Z
2
P
10
WX
18
Y
3
Q
11
WY
19
Axis
K
Axis
K
Address
K
B
4
R
12
WZ
20
C
5
U
13
H
21
D
6
V
14
E
7
W
15
Example:
G783 D0 O55 N2
; corresponds to G55 P2, but may be used variable in FlexProg
G783 D5 O54 N2 X3.55
; Write in zero offset table G54 P2 X-axis = 3.55
G783 D5 O54 N2 K1 L3.55
; As in the example above except programmed as a universal axis
G783 D9 O54 N2 X0 R2009
; Read zero offset table G54 P2 X-value and write to FKV[2009].
G783 D9 O54 N2 K1 R2009
; As in the example above except programmed as a universal axis
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
79
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5.53 G1000 eroding: Speeds
Property
Topic
Position
Syntax
modal
Eroding command
--G1000 <Parameter list>
The command G1000 can be used to define different eroding velocities.
Definition for the call in the G&M code:
Word
Description
Unit
A
Approach velocity
mm/min
B
Lift-off velocity
mm/min
E
Eroding velocity
mm/min
Example
G1000 E60 B18000 A18000
80
5.54 G1001 Eroding: Path descriptions
Property
Topic
Position
Syntax
modal
Eroding command
--G1001 <Parameter list>
The command G1001 can be used to define different eroding path descriptions.
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
Definition for the call in the G&M code:
Word Description
Unit
A
Start up path: Path at the start of the interval which is driven
with reduced acceleration
mm
B
Interval path: maximal path for returning during an interval –
otherwise first returning point
mm
C
Short interval path: Path for returning during short interval path
mm
D
Progress of orbital motion: If desired (see G1004 C), the
position of the orbital motion is shifted during an interval by the
value indicated in degrees.
Degrees
I
Approach path: Path of approaching erosion contour after an
interval or interruption which isn’t moved with feed or rapid
motion but eroding. Length of the 3rd step during an interval
needed for stop of feed rate.
mm
J
Path for returning within contour: During moving backwards
according to erosion generator the erosion contour is left in the
direction to the last returning point when the length of the path
for returning within contour is made within the erosion contour
(measured according to the already achieved erosion
progress). If this path is equal to zero, then a movement to the
last returning point is made immediately. If the return path is
very large, this could mean a return over the entire contour may
be done.
mm
MotionOne CM - G&M Code Programming Manual
81
5 G Functions: General explanations
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
B
A
1
I
2
Bild 4.3: Path descriptions 1 = Eroding / 2 = Interval
Example
G1001 A0.000 B10.000 C1.000 I0.000 J0.000
1
MotionOne CM - G&M Code Programming Manual
82
5.55 G1002 Eroding: Factors and modes
Property
Topic
Position
Syntax
modal
Eroding command
--G1002 <Parameter list>
The command G1002 can be used to define different eroding factors and modes.
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
Definition for the call in the G&M code:
Word
Description
A
Factor start-up acceleration
E
Factor speed eroding forward
H
Factor speed eroding backward
K
Factor speed of the radius change orbital movement forward, direction
erosion front
L
Factor speed of the radius change orbital movement backwards, direction
circle centre
I
Factor (returning point) RZP eroding forward (move to erosion contour)
J
Factor RZP eroding backward (leave path)
B
Mode of interval :
0: no interval
1: Time controlled (‘cyclic’)
2: Generator controlled (‘adaptive’)
3: Generator and time controlled (both)
C
Command:
0: Switch of High-Speed-Jump
1: Switch on High-Speed-Jump, mode 1
D
Additional factor for erosion velocity >= 1.0
Application: If only forward signals are present during erosion for a given
wait time (see G1003), than the velocity for moving is increased by this
factor until forward signals are constantly present.
N
Additional factor for the speed of an orbital movement (see also G1004
Exxx).
MotionOne CM - G&M Code Programming Manual
83
5 G Functions: General explanations
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
b
f
f
b
e
min
=
=
e
min
e
min
Factor speed eroding forwards, or factor returning point eroding forwards
Factor speed eroding forwards, or factor returning point eroding backwards
Eroding reference speed
Cycle time
Example
G1002 A1.000 B3 C1 E0.350 H0.650 K0.700 L1.300 I0.350 J0.650 D5.000 N1.200
MotionOne CM - G&M Code Programming Manual
84
5.56 G1003 Eroding: Time data
Property
Topic
Position
Syntax
modal
Eroding command
--G1003 <Parameter list>
The command G1003 can be used to define different eroding time specifications.
Definition for the call in the G&M code:
Word
Description
Unit
A
Number of reverse signals for a short lift-off Usage: If the
controller detects this number of reverse signals in sequence
during eroding, a short lift-off is started.
B
Cycle of interval: Time between two intervals
s
D
Wait time, until the additional factor for the erosion velocity is
applied Usage: If only forward signals are present during erosion
for a given wait time, then the velocity for moving is increased by
this factor until forward signals are constantly present.
s
E
Delay, until the use of the additional factor for the speed of orbital
movement. Usage: If there is only one forward signal during an
orbital movement during this delay, the orbital movement is then
accelerated by the additional factor as long as the forward signal
remains constant.
Example
G1003 A50 B0.400 D1.500 E0.500
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
85
5 G Functions: General explanations
5.57 G1004 Eroding: Orbital movement in the
selected plane
Property
Topic
Position
Syntax
modal
Eroding command
--G1004 <Parameter list>
The G1004 command can be used to start or stop an orbital movement in the
selected plane. The parameters listed below are used to define orbital movement.
86
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
Definition for the call in the G&M code:
Word
Description
Unit
K
Command: Orbital movement
0: Switch off the orbital movement
1: Switch on the circular orbital movement
2: Switch on the circular orbital movement with a controlled
radius
3: Switch on the conical orbital movement
R
Radius (required if K word ≠ 0)
mm
E
Velocity (required if K word ≠ 0)
ms/rotation
H
Height of the cone (required if K word = 3)
C
Definition of the behaviour of the orbital movement during
the interval:
0: Interruption of the orbital movement during the interval
1: Continuation of the orbital movement during a regular
interval
2: Continuation of the orbital movement during a short lift-off
3: Continuation of the orbital movement at all times
If no value is indicated explicitly, then C0 is used as the
default. See also G1001 D.
Example
G1004 K1 R0.005 E1000
--
mm
5.58 G1005 Punching: Parametrization and
activation
Property
Topic
Position
Syntax
modal
Punch command
--G1005 <Parameter list>
Various different parameters for the punching can be set using the G1005 cycle.
Moreover, it can also be used to enable and disable the punching.
Definition for the call in the G&M code:
Parameters
Description
Unit
A
The controller sends a signal to the punching unit early on
indicating that the punching operation can be started if the
processing of the current contour element will take less
time than the time indicated.
ms
D
The controller sends a signal to the punching unit early on
indicating that the punching operation can be started if the
path still remaining to be travelled in the current contour
element is less than the path indicated.
mm
O
After the movement in the current contour element has
been finished, the controller sends a signal to the punching
unit only after expiration of the time indicated stating that
the punching operation can be started.
ms
H0: Switching off the punching functionality
H1: Activating the punching functionality. When Exact Stop
H
(G60) is also enabled, a signal is sent to the punching unit
after every contour element that the punching operation
can be started. After completion of the punching operation,
the path for the next contour element is travelled. The first
punching operation is started after the first contour
element.
H2: Activation of the nibble function. When Exact Stop
(G60) is also enabled, a signal is sent to the punching unit
before every contour element that the punching operation
can be started. The first punching operation is started
before the first contour element.
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
87
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
Delay and the early sending of the signal to the punching unit for the starting of the
punching operation involve two different technologies. Consequently, it is not
possible to parametrize both technologies simultaneously.
Pre-enable for stroke
A configurable pre-enable of the punch stroke needs to be issued in order to
optimize the reaction time.
The parameter (1) “Stroke lead time" defines the maximum time difference between
the enable of the stroke output signal and the end of the interpolation of the current
G&M code (tc - tb).
The parameter (2) “Stroke length" defines the maximum distance between the
enable of the stroke signal and the end of the interpolation of the current G&M code
(tc - tb).
The CNC sets signal B “Stroke signal" either on (ta) or (tb), depending on what
happens first. The figure above shows that the CNC sets the stroke on (ta) because
(ta) takes place before (tb).
Bild 4.4: Pre-enable for stroke
C: Interpolation
A: Axis movement B: Stroke signal
88
Delayed stroke
Example
Depending on the application, it may be necessary to delay a punch stroke for a
certain time at the end of the interpolation of the current G&M code (tc). To be able to
parametrize the delay, the parameter “Stroke delay time" (1) must be available.
There must be a command that is active blockwise for the activation of the delayed
punch stroke. When delayed punching is active, the stroke is sent after the
interpolation is completed and the “Stroke delay time” has expired (te). The
parameters of the pre-enable are inactive during delayed punching.
#para_expr
#define PUNCH_CONF(slt, sld, sdt)
G1005 A=slt D=sld O=sdt
#define PUNCH_CONF_LEAD(slt, sld)
PUNCH_CONF(slt, sld, 0.0)
#define PUNCH_CONF_DELAY(sdt)
PUNCH_CONF(0.0, 0.0, sdt)
#define PUNCH_ON()
G60 G1005 H1
#define NIBBLE_ON()
G60 G1005 H2
#define PUNCH_OFF()
G61 G1005 H0
G00 X0 Y0
;Move to starting point
PUNCH_CONF_LEAD(5, 10)
;Parametrization for setting the signal to the punching unit
PUNCH_ON()
;Start of the punching functionality
G01 G91 F2500
;Parametrization of the movement
X10
;Exact stop at X10, Y0 plus punching operation
X10
;Exact stop at X20, Y0 plus punching operation
X10
;Exact stop at X30, Y0 plus punching operation
X10
;Exact stop at X40, Y0 plus punching operation
Y10
;Exact stop at X40, Y10 plus punching operation
X-10
;Exact stop at X30, Y10 plus punching operation
X-10
;Exact stop at X20, Y10 plus punching operation
X-10
;Exact stop at X10, Y10 plus punching operation
X-10
;Exact stop at X0, Y10 plus punching operation
PUNCH_OFF()
;Switching off the punching functionality
M30
;End of program
Bild 4.5: Delayed stroke
C: Interpolation
A: Axis movement B: Stroke signal
In order to make the functionality in the G&M code program clearer, it is possible to
define aliases for them such as are used in the following example.
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
89
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5.59 G1010 Laser command without exact stop
Property
Topic
Position
Syntax
modal
Laser command
--G1010 <Parameter list>
The command is triggered at the exact programmed position (+/- 10ns).
Definition for the call in the G&M code:
Parameters Value
H
O
C
Description
0
Continuous output OFF
1
Continuous output ON
2
Continuous output Toggle
0
Pulse output OFF
1
Pulse output ON
2
Pulse output Toggle
0
Distance control (NDC): Enable movement to the
workpiece for all NDC axes
1
Distance control (NDC): Inhibit movement to the
workpiece for all NDC axes
Example: see G1011
Default
0
0
0
90
5.60 G1011 Laser command with exact stop
Property
Topic
Position
Syntax
modal
Laser command
--G1011 <Parameter list>
The command is triggered at the exact programmed position (+/- 10ns).
Definition for the call in the G&M code:
Parameter
Value
A
0.0 - 10.0
C
0.0 to
50.000.000
Description
Default
Analogue output in V
0.0
Minimum pulse output frequency f-Min is
output once the pulse pauses are taking too
long ( 0 Hz<f-Pulse<f-Min )
0.0
0: Deactivate function
> 0-50 MHz: Activate function, set f-Min
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
D
x.x
Laser pulse output every x.x mm referenced
to the entire path For the generation of a
speed-dependent frequency with a defined
pulse width (J): D=v_max/60/f_max
E
0/1
0: Switch off laser treatment
1: Switch on laser treatment
J
0.01 to
655.35
L
100 to
50.000.000
N
0.00 to
10485.76
Pulse width in µs
0
E-00044
Standstill frequency in Hz at G04 as long as
G1010 O1 is active
Output delay in µs to adjust the output
position for internal processing in the
controller
MotionOne CM - G&M Code Programming Manual
E-00043
91
5 G Functions: General explanations
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
Example G1010 / G1011
G1011 A5.3 D0.02 // Laser analogue output 5.3 V, laser pulse spacing every 0.02 mm, implicit laser
enable
G00 X10.0 Y40.0 // Positioning in fast jog
G01 X35.0 F5000 // Feed movement with F5000, laser is still OFF
G1010 O1 // Laser pulse output ON as of X35.0 without exact stop
G01 X40.0 // Feed movement with active pulse output every 0.02 mm
G1011 O0 // Laser pulse output OFF at X40.0 without exact stop
G01 X60.0 // Feed movements without exact stop
G01 Y35.0
G01 X42.5
G1010 O1 // Laser pulse output ON as of X42.5 without exact stop
G01 X27.5 // Feed movement with active pulse output every 0.02 mm
G01 O0 // Laser pulse output OFF at X27.5 without exact stop
G01 X10.0 // Feed movements without exact stop
G01 Y30.0
G01 X25.0
G1010 O1 // Laser pulse output ON as of X25.0 without exact stop
G01 X45.0 // Feed movement with active pulse output every 0.02 mm
G1010 O0 // Laser pulse output OFF at X45.0 without exact stop
G01 X60.0 // Feed movements without exact stop
G01 Y25.0
MotionOne CM - G&M Code Programming Manual
G1011 D0.03 // Laser pulse spacing every 0.03 mm and exact stop at X60.0 Y25.0
G01 X47.5 // Feed movements without exact stop
G1010 O1 // Laser pulse output ON as of X47.5 without exact stop
G01 X22.5 // Feed movement with active pulse output every 0.03 mm
G1010 O0 // Laser pulse output OFF at X22.5 without exact stop
G01 X10.0 // Feed movements without exact stop
G01 Y20.0
G01 X25.0
G1010 H1 // Laser continuously ON at X25.0
G01 X47.5 // Feed movements without exact stop with laser ON
G01 Y5.0
G01 X40.0
G01 Y15.0
G01 X30.0
G01 X25.0
G01 Y20.0
G1010 H0 // Laser continuously OFF at X25.0 Y20.0 with exact stop (due to contour end)
G00 X0.0 Y0.0 // Positioning movement in fast jog
92
5.61 G1014,x data exchange for synchronized
tasks
Property
Topic
Position
Syntax
modal
Special command
--G1014 <Parameter list>
Interface for the exchange of data in the direction "CNC to PLC".
The programmed values appear in the corresponding SyncTask instance of the
PLC. The command is triggered at the exact programmed G&M code position. The
parameter is contour interrupting and receipt of the values in the PLC is not
acknowledged by the PLC.
Note: Further information on this can be found in the documentation "MotionOne CM
CNC laser functions" in the chapter "SyncTasks" → G1014
Definition for the call in the G&M code:
Parameters
Value
Type
X
0 -31
INT
P0-P31
REAL
Example
G1014,5 P0=1 P3=2.2
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
93
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5.62 G1015 Laser processing: Laser Start
5.63 G1016 Laser processing: Laser Stop
Property
Topic
Position
Syntax
Property
Topic
Position
Syntax
modal
Laser command
--G1015 <Parameter list>
94
modal
Laser command
--G1016 <Parameter list>
The command G1015 starts the laser processing and assigns the details of the
The command G1016 stops the laser processing and starts a subsequent frog jump.
contour of the current G&M code to the index of the AsST.contourInfo in
corresponding SyncTask instance of the PLC.
Definition for the call in the G&M code:
Note: Further information on this can be found in the documentation "MotionOne CM
CNC laser functions" in the chapter “Functions for laser cutting"
Definition for the call in the G&M code:
Parameters
Definition
Parameters
Definition
P1
Index for the next piercing technology
P2
Index for the next cutting technology
P3
Reserved
P4
Reserved
P1
Index for the piercing technology
P2
Index for the cutting technology
P5
Enable/disable frog jump for the next contour
P3
Index for AsST.contourInfo
P6
Maximum height for frog jump, mm
P4
Reserved
5.64 G1017 – NDC functions (nozzle distance
control)
Property
Topic
Position
Syntax
modal
Special command
--G1017 <Parameter list>
Definition for the call in the G&M code:
Parameters
Definition
P0
Tolerance for the state AsST.distanceControl
[].status.targetReached in mm
Notes: An unintentional negative sign will be ignored, default value
is 0.1 mm
P1
<=0: Disable NDC
>0: Desired distance between workpiece and laser head in mm
(NDC will be enabled)
P2
Maximum velocity for the current velocity profile (an unintentional
negative sign will be ignored)
P3
Maximum acceleration in mm/s2 (an unintentional negative sign will
be ignored)
P4
Maximum jerk in mm/s3 (an unintentional negative sign will be
ignored)
P5
Hysteresis of the distance sensor in mm
Notes: The input distances for NDC below this value will
considered to be zero. An unintentional negative sign will be
ignored, default value is 0.1 mm
P6
Index for FKV. The input voltage of the corresponding NDC axis in
FKV appears under this specified index. The NDC axis can be
specified with P26. Without P26, the input voltage of the NDC axis
in FKV with the highest-ranking index appears.
P7
Index for HFP. The input voltage of the corresponding NDC axis in
HFP appears under this specified index. The NDC axis can be
specified with P26. Without P26, the input voltage of the NDC axis
in HFP with the highest-ranking index appears.
Notes: HFP has a maximum index of 255.
It is possible to define a nozzle distance control for every CNC axis that is equipped
with a sensor. Each axis can have its own settings (freeze function, gain factor,
calibration and velocity table). The axes can be defined individually (with G1017
P26, G1018 P26) or jointly (without G1017 P26, G1018 P26).
Note: More detailed information on this can be found in the documentation
"MotionOne CM CNC laser functions" in the chapter “Nozzle distance control
(NDC)”.
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
95
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
Parameters
Definition
P13
Virtual contour length shortening for the frog jump synchronization
in mm
P17
Selection of the communication variables for G1018 P16 P17
1: Manual parameters, HIP&HFP (default setting and required for
parameter transfer of laser processing technologies:
fGv_LaserPiercingTechnology() and fGv_LaserCuttingParameters
())
2: Communication variables, FKV&IKV
P19
P20
Delete calibration table or index of the rotary axis for the use of 2D
calibration tables
0-15: Deletes the existing calibration table and sets it to 2D while
using the indicated index for the rotary axis
else: Deletes the existing calibration table and sets it to 1D (default
setting)
Enable (define) axis for distance control
<0: Cancel distance control for all axes (with P26, only for this axis)
0-15: Index of the axis
Note: The parametrization of NDC axes with G1017 G1018 is only
possible for defined axes. When cancellation takes place, the
parameters of the NDC axis are not changed or set to the default
value.
Parameters
96
Definition
P22
Enable/disable distance controller
<0: Disable all NDC axes (with P26, only for this axis)
0-15: Enable this axis
Note: Enabling is only possible if the calibration table contains
more than one data set (Distance + Voltage) for one rotary axis
position.
P26
If P26 is specified and can be used for an NDC axis, the effects of
P0-31 only apply to this single axis. Otherwise, every defined axis is
affected, provided the command is usable for several axes.
0-15: Axis index
P27, P29
Reserved for internal purposes
Example
A G&M code program example on this can be found in the documentation
"MotionOne CM CNC laser functions" at the end of the chapter “Nozzle distance
control (NDC)”.
5.65 G1018 – Functions of the calibration table
and the velocity profile (nozzle distance control)
Property
Topic
Position
Syntax
Definition for the call in the G&M code:
modal
Special command
--G1018 <Parameter list>
When using nozzle distance control, the control characteristic can be defined by
means of a speed profile; the calibration of the measured distance values is carried
out using a calibration table. Each CNC axis can have its own calibration and speed
table.
Note: More detailed information on this can be found in the documentation
"MotionOne CM CNC laser functions" in the chapter “Nozzle distance control
(NDC)”.
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
97
5 G Functions: General explanations
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
Parameters
Definition
P12
Estimated delay time between sensor and drive in ms (an
unintentional negative sign will be ignored)
P13
Selection of the velocity profile for distance control or processing
0-9: Index of the velocity profile
else: Velocity profile with the index 0 is selected
Note: The default value is 0, the processing includes G1018 P14,
P15, P16-P22
Parameters
98
Definition
Parameters for the continuous velocity profile (function)
P14 = dmax
P15 = b
The continuous velocity function is the function VelFunc
(b,d,dmax,vmax).
VelFunc = sign(d)∙|vmax|∙(b |d| -1)/(b |dmax| -1)
P14,P15
vmax: maximum velocity (G1017 P2 or AcST.distanceControl
[].velocityMax)
d: current distance
dmax: maximum distance (G1018 P14 or AcST.distanceControl
[].velTabDmaxPos/velTabDmaxNeg)
b: base parameters (G1018 P15 or AcST.distanceControl
[].velTabBasePos/velTabBaseNeg)
Notes: For b and dmax, two different parameter values can be
specified by using a sign when using P14 and P15. Positive values
are used for positive d-distances and negative values for negative
d-distances. For example, P15=-1.4 results in b=1.4 for negative
distances and P15=1.5 results in b=1.5 for positive distances. The
standard values for b and dmax are 1.3 and 20 mm (both for
positive and for negative d-distance values). If 0.9999<|b|<<1.0001,
then |b| is set to 1.0001 automatically.
Parameters
Definition
P16, P17
Access to the interface HFP or FKV for an axis specified with P26.
P16=1: Load calibration table
P16=2: Save calibration table
P16=3: Load velocity table
P16=4: Save velocity table
The value of P17 indicates the start index for HFP or FKV. For the
start index, the value must correspond to the number of data sets.
This index is followed immediately by the data sets. For a
calibration table, a data set is the triplet (position, distance, voltage),
s. G1018: P23, P24, P24, P25. For a velocity table, one data set is
the duplet (distance, velocity), s. G1018 P21 P22. Loading is only
possible for an inactive NDC axis.
P18, P19,
P20
Deletes a table or an individual data set from the table of an
inactive NDC axis.
P18=1 Deletes the calibration table if P19 and P20 are not
specified. P19=i and P20=j specify the indices (i,j) of a single data
set in a 2D calibration table. i is an index for the position column of
the rotary axes, and j is an index for the voltage/distance row. For
1D calibration tables, P19 must equal zero.
P18=2: Deletes the current velocity table if P19 is not specified.
P19=i deletes an individual data set on index i.
Notes: For a calibration table, a data set is the triplet (position,
distance, voltage), s. G1018: P23, P24, P24, P25. For a velocity
table, one data set is the duplet (distance, velocity), s. G1018 P21
P22.
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
5 G Functions: General explanations
Parameters
Definition
P21, P22
Creates a data set “P21, P22" in the velocity table of an inactive
NDC axis.
P21: Distance, mm
P22: Associated velocity limit, mm/min
The data sets are sorted automatically in ascending order
according to the distance (P21) and not according to the velocity
(P22). Consequently, the entries can be in any order (ascending,
descending, random) relative to each other.
A new data set overwrites an existing data set if the absolute value
of its deviation for the distance (P21) is less than 1.0e-6 in mm. The
equivalence is not checked for the velocity (P22). By default, a
velocity table has one data set (0, 0) and a length of 1; when a
velocity table has a length of 1 or is blank, the current or the default
velocity function (G1018 P14, P15) is used. If a velocity limit from
the table exceeds the maximum velocity (G1017 P2 or
AcST.distanceControl[].velocityMax), then the value from (G1017
P2 or AcST.distanceControl[].velocityMax) is used instead.
MotionOne CM - G&M Code Programming Manual
99
5 G Functions: General explanations
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
Parameters
Definition
P23, P24,
P25
Creates a data set "P23, P24, P25" in the calibration table of an
inactive NDC axis.
P23: Position of the rotary axis, mm
P24: Distance of the sensor to the workpiece, mm
P25: The associated voltage, in volts
Notes: The data sets are sorted automatically in ascending order
according to their position (P23) or voltage (P25) and not according
to distance (P24). Consequently, the entries can be in any order
(ascending, descending, random) relative to each other. A new
data set overwrites an existing data set if the absolute value of its
deviation for the position (P23) or voltage (P25) is less than 1.0e-6
in mm or volts. The equivalence is not checked for the distance
(P24). If P23 is not specified, the position of the rotary axis is set to 0
and the table to 1D. In this case, the value of P23 is irrelevant and
has no effect. If a 2D calibration table has only one rotary axis
position, the value of P23 is also irrelevant and has no effect. The
default is for the calibration table to be blank.
P26
If P26 is specified and can be used for an NDC axis, the effects of
P0-31 only apply to this single axis. Otherwise, every defined axis is
affected, provided the command is usable for several axes.
0-15: Axis index
Example
A G&M code program example on this can be found in the documentation
"MotionOne CM CNC laser functions" at the end of the chapter “Nozzle distance
control (NDC)”.
MotionOne CM - G&M Code Programming Manual
100
6 Parameter programming
These parameters allow the calculation with variables within the G-Code program,
the formulation of the conditions for executing program parts and the use of program
branches and loops. G-Code programs containing parameter instructions must
contain the code "#Para" at the beginning of the file.
Syntax
The jumps to these marks can be realized via GOTO or IF ... GOTO. GOTO jumps
directly to the specified jump mark. IF ... GOTO is only branched to the jump mark if
the condition behind IF applies. (Comparison operator)
GOTO feed
IF Q1 > Q2 GOTO feed
Six comparison operators are offered:
<
smaller than
>
greater than
Qn = [-] Expression1
=
equal to
Qn = [-] Expression1 Operator Expression2
<=
smaller than/equal to
>=
greater than/equal to
!=
not equal
n = Index of the Q parameter [0 ..... 255]
Operators = +, -, *, /
Example
Q1 = [-]Numeric value
Q1 = [-]Q2
Q1 = Q2 + Q3
Q1 = 10 * Q3
The Q parameters can be used in combination with all valid G-Code addresses.
Valid addresses are the axis designators, feed and spindle addresses. (G01 X=Q22
F=Q3 S=Q1 M3).
In order to be able to branch/jump in different places, jump marks can be introduced.
Jump marks (max. 256) are in square brackets.
[Mark1]
[Feed]
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
6 Parameter programming
MotionOne CM - G&M Code Programming Manual
101
7 Flexible G&M code Programming
(FlexProg)
processing similar to cycles. To be able to use a G&M-code program with FlexProg
functionality, the activation of the calculation modules of the control is necessary.
This is done by the code '#PARA_EXPR' at the beginning of the program.
7.1 General
A key enhancement of the functionality of the G-Code language and the parameter
programming is the flexible programming (FlexProg). The use of global and local
variables, the free definition of functions with call-up parameters and return value as
well as the use of control structures for the conditional or repeated execute facilitate
the programming of complicated procedures and calculations substantially. This is
supplemented by the option of the formulation of complex mathematical expressions
with several bracket levels and the well-known simple use of the results in the GCode program. All these elements are also part of higher programming languages,
for instance 'C/ C++’, a programming language often used in technical and
mathematical applications.
Primarily the rules of parameter programming apply. In contrast to pure parameter
programming, substantially more functionality is available to the user of FlexProg
with less effort for ancillary times, such as e.g. the necessary implementation time.
Bild 6.1: XPanel status menu with FlexProg sample program
With the options of programming, the responsibility of the programmers also
increases. The effectiveness of a program thus depends substantially on the
selected program structure. As a basic principle, more comprehensive calculations
should not be used in traverse commands so as to avoid loss of speed in contours.
All calculations are implemented during the duration of the program and of course
require computing time. FlexProg is particularly well suited for workpieces that only
differ from one another slightly or with which the processing steps result during the
duration. FlexProg thus offers the option of parametrizing and implementing the
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
7 Flexible G&M code Programming (FlexProg)
MotionOne CM - G&M Code Programming Manual
102
7 Flexible G&M code Programming (FlexProg)
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
7.2 Restrictions
n
Despite great similarity of the language with the programming language 'C', it
applies that the instructions are processed line by line.
n
If more than one calculation expressions are used in one line, at least one
space must be after each expression, otherwise a correct assessment of the
individual expressions is not possible.
n
In expressions, round brackets '(...)' can be used for structuring. They can
also be nested.
n
With FlexProg programs, macros are treated as functions without return
value. The initialization run during implementation, as still necessary with
'#PARA', is therefore no longer necessary.
n
The Time programming with G95 is not available.
n
Pure calculation instructions may not stand in one line with instructions to
G&M addresses. Care should be taken to ensure a clear division per block of
calculations and G&M instructions. Only with the allocation of values or
calculation specifications to G&M addresses, are deviations from this rule
permissible.
n
The control of syntax and semantics of the programs is greatly restricted
through the options of conditional and unconditional jumps. Some errors are
only recognizable during the runtime.
n
For FlexProg programs, particular comment rules apply.
n
The automatic supplementing of missing parameters in the circular
programming with G02/G03 is not possible within FlexProg programs. The
circular parameters are to be indicated in their entirety, i.e. end point and
centre point or end point and circle radius.
n
Bracketing
{ may stand at the beginning of the first line of an instruction block.
} must stand in a separate line.
103
7.3 General program structure
A FlexProg program consists of a program core and a number of functions and/or
macros that are all in one file. The program core does not require any explicit
marking and also does not have any call-up parameters. If variables are agreed in
the program core, these are valid in the entire program, i.e. also in macros and
functions, and of course can also be changed.
n
#Para_Expr -> Program code
n
Declaration of the functions
n
Definition of the global variables
n
Definition of macros
n
Program core
n
Definition of the functions
7.4 Data type
The data types used in FlexProg are void, Int, Float and Double. They are used both
as Handover values as well as with the return values. The data type Void serves as
a placeholder (engl. empty, vacancy, hollow space).
Type
Byte
Bit
Post comma
Range
Void
-
-
-
-
INT
4
32
none
4.29 10-8 – 4.29 108
Float
4
32
7 significant
1.18 10-39 – 3.4 1038
Double
8
64
15-16 significant
2.23 10-308 – 1.79 10308
7.5 Functions
7.5.1 Function declaration
Functions consist of a declaration part and a definition part. Functions always have a
type, a name and a list of call-up parameters that can also be empty. All instructions
belonging to a function must stand in the relevant curly brackets (instruction block).
So that the Compiler can check the functions used and their call-up, all functions
used must be declared before the definition. It must be announced which result type
has the function, which name it gets and which data types in which order may
appear as a parameter list. The declaration of the functions used must be done at
the beginning of the program, i.e. directly behind the code 'PARA_EXPR'. Each
function is declared in one line.
Syntax
DECLARE <Data type> <Function name> (<Parameter list>)
The Function name may consist of the reserved words of the language. Letters,
numbers and the underscore '_' can be used in the function name.
The parameter list is the listing of the values to be handed over when the function is
called up. The types Int, Float and Double can be used. If the parameter list is empty,
the type VOID can be entered. Each parameter in the list is to be preceded by the
data type.
Example
DECLARE void Deliver ()
; Function without return, without handover value
DECLARE void Rectangle (float
; Function without return, with handover value
Xvalue)
DECLARE float Calculate X
; Function with return, without handover value
(void)
DECLARE float Jump (int
number)
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
7 Flexible G&M code Programming (FlexProg)
; Function with return, with handover value
MotionOne CM - G&M Code Programming Manual
104
7 Flexible G&M code Programming (FlexProg)
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
105
7.5.2 Macros and Q parameters
7.5.3 Function definition
Macros are programmed the same as in the standard G&M code. They act like
functions without argument and without return value. They need to be defined before
use.
The function definition consists of the function head with the information on the
function call and the instruction block that contains the variable agreements and
instructions. Function definitions may not be nested. In contrast to the declaration,
the Key word 'DECLARE' is missing and the parameter list must contain names for
the individual parameters. The first instructions of the instruction block normally
contain the local variables. If a return value is agreed, this must be transferred with
Example
#MacroName#
G01 X20
G...
##
Q parameters are always of double data type and have an index of 0....255
e.g. Q234 = 123.4567
the RETURN command to the calling function.
Syntax
<Data type> <Function name> (<Parameter list>) ->function head
{
.....
-> instruction block
}
Example
void rectangle (float Xvalue, float Yvalue)
{
G91
G01 Y=Yvalue
X=Xvalue
Y=-Yvalue
X=-Xvalue
G90
}
; Function head
; Beginning of instruction block
; Relative measure
; Move Y to Yvalue
; Move X to Xvalue
; Move Y to negative Yvalue
; Move X to negative Xvalue
; Absolute measure
; End of instruction block
7.5.4 Variables
The variables are declared in the program head as follows:
Variables are a key extension of the G&M syntax. For the named data types,
variables and one-dimensional fields can be defined and used. This is done by
indicating the data type and Variable name. With the exception of a few restrictions
that result from the linguistic scope of the G&M code and the extensions (e.g. while,
if, goto, float), this name can be freely selected.
Designators for symbolic variables consist of at least 2 letters at the beginning of the
name to preclude any confusion with G&M addresses. The underscore is also
permissible there. Numbers can also be used in the name. It is recommended that
the variable type is indicated in the name, for example 'f_depth' for a FLOAT variable.
Variables are not automatically initialized during the definition, use of upper and
lower case is possible, but no differentiation is made. The agreement of the global
variants is always done at the beginning of the G-Code program.
Syntax
<Data type> <Variable name>
If several variables of the same time are used, the declaration is as follows:
<Data type> <Variable name1>, <Variable name2>, <Variable name3>
The Data type can be Int, Float or Double. Variables can also be indexed onedimensionally.
Example
float Xdelivery
int number
int flag[10]
double X_Pos, Y_Pos, Z_Pos
Local variables can be used in functions.
The definition is done according to the parameter list in the function definition.
Global variables are available to all program parts for reading and writing access
within a G&M-code program. They can therefore also be used in functions,
procedures and macros. They need to be defined at the beginning of the program.
Local variables can only be defined and used in functions. After the function is no
access is possible any more. With the repeated call-up of functions too, the values of
the local variables cannot be restored again.
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
7 Flexible G&M code Programming (FlexProg)
MotionOne CM - G&M Code Programming Manual
106
7 Flexible G&M code Programming (FlexProg)
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
107
7.5.5 Communication variables
7.5.6 Expressions and operators
These variables permit an exchange of data between G&M-code programs and
various control parameters and vice versa. These can be measurement values of the
cycles or parameters from the tool management. The communication variables can
be used for all permissible computing operations and instructions to G&M addresses
(axes). Calculations are carried out during the runtime of the G&M-code program.
Calculations are not permitted in the index,
Expressions consist of operands and operators. The operands are variables,
constants, parameters or expressions. The assessment of an expression supplies a
value that is dependent on the type of the operators used. The value assignment is
an expression. It is the most used form of assignment of values to variables and
parameters. The expression to the right of the assignment operator is calculated and
the value assigned to the variable on the left. A variable is an expression that refers
int variables, however, can be used.
to an already defined, modifiable memory area, i.e. variables and parameters. The
bit operators can only be applied to integer variables. (IKV or INT).
IKV [Index] → Integer communication variable
FKV [Index] → Float communication variable
The index must be in [...] and has a range of value from [0...32768]. The user should
use the index 0....1999 as indices from 2000 among others are used by the
measuring cycles and may overwrite user data.
IKV [10]
FKV [1004]
int Hello
Hello = 5
FKV [Hello] → Int variables can also be used as an index
NOTE
l
If the control is converted to globally valid variables (the DWORD
'bGlobalQ' is inserted in the registration
{HKLM\SOFTWARE\andron\G&MConverter} and the value >0 is
assigned to it) IKV and FKV variables no longer exist. QI and Q
are used in an analogous manner to them. (QI = IKV and Q = FKV)
Syntax
Variable = Expression
Example
Q125 = 100.876
FKV [2001] = Q100 * sin (Q23)
Residual path = Calculate residual path (value 1, value 2)
The following operators can be used in FlexProg:
Arithmetical operators
Comparison operators
Logical operators
Bit operators
=
+
*
/
<
>
==
<=
>0
!=
||
&&
!
|
&
~
^
>>
<<
Assignment of values
Addition
Subtraction, negative preceding sign
Multiplication
Division
smaller than
greater than
equal to
smaller than/equal to
greater than/equal to
not equal
Logic OR operation
Logic AND operation
Logic reversal (NOT)
OR operation of bits
AND operation of bits
Complement (unary)
Exclusive OR operation of bits
Bit shift to the right
Bit shift to the left
7.5.7 Mathematical functions
Function
Description
Function
Description
SIN (X)
Sine angle
CEIL (X)
Round up
COS (X)
Cosine angle
FLOOR (X)
Round down
TAN (X)
Tangent angle
LOG (X)
Log base E
ASIN (X)
Sine reversal
EXP (X)
Exponent base E
ACOS (X)
Cosine reversal
SQRT (X)
Root formation
ATAN (X)
Tangent reversal
ATAN2 (X, Y)
Partial arcus tangent
SINH (X)
Sine base E
LOG10 (X)
Log base 10
COSH (X)
Cosine base E
POW (X, Y)
X to the power of Y
TANH (X)
Tangent base E
FABS (X)
Absolute value
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
7 Flexible G&M code Programming (FlexProg)
MotionOne CM - G&M Code Programming Manual
108
7 Flexible G&M code Programming (FlexProg)
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
MotionOne CM - G&M Code Programming Manual
109
7.5.8 Assignment of G-Code addresses
7.5.10 Point definition
Constants, variables, parameters and also expressions can be assigned to the
following addresses:
As per G78, points (maximum of 63) can be defined parametrized. The values for the
individual axes can be parametrized and can also be done as a calculation
specification. These are calculated anew to the runtime of the program each time
they are called up. If, for instance Q4, as shown below, is changed after the G78
block, the value determining Y is also changed.
n
X, Y, Z, A, B, C, U, V
n
I, J, K, R
n
F, S, D, E
n
W, O, N, H, L
Syntax
G-Code address = [-] Constant
G-Code address = [-] Qn
G-Code address = [-] IKV[n]
G-Code address = [-] FKV[n]
G-Code address = expression
Example
G1 X=Center*cos(Q4) Y=Q10*sin(Q4) Z=delivery + IKV [1300]
G1 X=-Q5 Y=FKV [1555] F=Feed1
7.5.9 Comment marks
Comments in round brackets '(...)' are not permitted. These brackets are reserved for
the formulation of expressions. Program comments can be done using the following
signs:
;
//
%
/* ... */
The rest of the line is comment, any place in the block
The rest of the line is comment, any place in the block
The rest of the line is comment, only possible at the beginning of the block
Comment marks for beginning and end, comments over more than one
lines are also possible
G78 P1 X=IKV[2] Y=Q4+Q3 Z10 ;for P1, calculations are indicated and
G0 P1 C90
;only for the first call-up is P1 replaced
;by the calculation specifications,
;the internal result: G0 X=IKV[2] Y=q4+q3 Z10
C90
Q4 = Q4 + Q10
;Q4 is changed
G0 P1 C90
;second call-up; P1 is replaced again,
;the calculations are executed, the new Q4
;is used as target position and for
;Y another value is traversed than with the first
;call-up
7.5.11 Instruction
7.5.12 Jump marks
Simple instruction
Jump marks must be in [.....] brackets, may only be a maximum of 32 characters long,
must stand alone in a line and a maximum of 256 jumps marks must be available in
the G-Code program.
A simple instruction consists of a completed expression. An expression is deemed to
be completed when all round brackets are closed again and behind the last valid
part expression there is no operation sign but rather an empty space, tabulator or the
end of the line. An explicit sign for the end of the expression is thus not necessary.
Example
[Start]
X_New = X_Old +100
7.5.13 GOTO/IF ... GOTO/IF ELSE
Instruction block
Instructions can be grouped using curly brackets. This means that all definitions and
instructions belonging to a function are noted in curly brackets, this is then called the
functional block. At each point where an expression can stand, an instruction block
can also stand. These can also be nested as required.
Example
void deliver ( )
{
int variable1, variable2
Variable1 = IKV [2010] + 1 ; Count up
...
}
Jump commands are defined with GOTO instructions. GOTO instructions are either
alone in the block or together with IF instructions. Behind the GOTO command there
is the jump mark to which it is to be branched. With IF, conditions for jumps, the
conditional execution of instructions or instruction sequences, can be formulated.
With ELSE; an expression 2 which is to be alternatively processed can be initiated.
This branch is only reached if the expression is false.
n
With example 1, the branching is to the jump mark
n
With example 2, branching is only done to the jump mark if the <expression>
is true.
n
With example 3, instructions1 are only executed if the <expression> is true.
Otherwise, the instructions2 are processed.
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
7 Flexible G&M code Programming (FlexProg)
MotionOne CM - G&M Code Programming Manual
110
7 Flexible G&M code Programming (FlexProg)
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
Example 1
GOTO [jump mark]
Example 2
IF <expression> GOTO [jump mark]
Example 3
IF <Expression>
{
Instructions1
.....
}
Else
{
Instructions2
.....
}
111
7.5.14 FOR loops
With FOR, the conditional and repeated execution of program parts can be
formulated. If <Expression2> is true, the following program part, including
<Expression3> is processed. If <Expression2> is not true, the system jumps to the
next instruction after the loop. If an <Expression> is not used, the comma needs to
be set nevertheless.
(, <Expression2>, <Expression3). In the expressions 1-3, no traverse commands or
G&M addresses may be used. Instead, only calculation expressions and
comparisons may be used. With the key word BREAK, the loop can be terminated
early. With the key word CONTINUE, the next loop run can be initiated before the
loop end has been reached. As many FOR loops can be used in the program as
required and these can be nested in one another.
Example
FOR ( <Expression1>, <Expression2>, <Expression3>)
{
Instructions
.....
.....
}
n
<Expression1> is processed once at the start of the loop
n
<Expression2>= true -> execute loop
n
<Expression3> is processed during every loop run
A counter is often counted up/down here.
7.5.15 WHILE loops
7.5.16 DO ... WHILE loops
With WHILE, the conditional and repeated execution of program parts can be
formulated. If <Expression> is true, the following program part is processed. If
<Expression> is not true, the system jumps to the next instruction after the loop. No
traverse command and no G-Code address may be used in the expression. Instead,
only calculation expressions and comparisons may be used. The loop can be
terminated early with the key word BREAK. With the key word CONTINUE, the next
loop run can be initiated before the loop end has been reached. As many WHILE
loops can be used in the program as required and these can be nested in one
another.
With DO... WHILE, the conditional and repeated execution of program parts can be
formulated. If <Expression> is true, the following program part is processed. If
<Expression> is not true, the system jumps to the next instruction after the loop. In
the expression, no traverse command and no G-Code addresses may be used.
Instead only calculation expressions and comparisons may be used. The loop can
be terminated early with the key word BREAK. With the key word CONTINUE, the
next loop run can be initiated before the loop end has been reached. As many
DO...WHILE loops can be used in the program as required and also nested in one
another.
Example
Example
WHILE (<Expression>)
{
Instructions
.....
.....
}
--> is checked here
If <expression> is true, the instructions are processed. Otherwise, they are skipped.
The loop query is done at the beginning of the loop.
DO
{
Instructions
.....
.....
}
WHILE (<Expression>) --> is checked here
This loop is run through once in any case. If <expression> is true, the loop is run
through again. (As long as the <expression> is false). The loop query is done at the
end of the loop.
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
7 Flexible G&M code Programming (FlexProg)
MotionOne CM - G&M Code Programming Manual
112
7 Flexible G&M code Programming (FlexProg)
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
7.5.17 SWITCH ... CASE branching
Example
With the SWITCH instruction, a multiple branching can be programmed very easily.
CASE branches can be terminated with BREAK and the system jumps to the end of
the instruction. If the BREAK is not at the end of a branch, the following branch is
also processed. If none of the options applies, the DEFAULT branch is processed, if
available. In the <expression>, no traverse command and no G-Code addresses
may be used. Instead only calculation expressions and comparisons may be used.
SWITCH (<Expression>)
{
CASE X:
{
Instructions
.....
}
As many SWITCH commands can be used in the program as required and also
nested within one another.
CASE X:
{
Instructions
.....
BREAK
}
CASE X:
{
Instructions
.....
}
DEFAULT:
{
Instructions
.....
}
}
The SWITCH ... CASE instruction determines the value of (<Expression>) at the
beginning and this value is then compared with X in the CASE branches. If it
matches, the instructions in this branch are processed. If no value matches, the
113
instructions in the DEFAULT branch are processed. If no BREAK is at the end of a
branch, the next branch is also processed (even if the value of X does not match
(<Expression>).
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
7 Flexible G&M code Programming (FlexProg)
MotionOne CM - G&M Code Programming Manual
114
7 Flexible G&M code Programming (FlexProg)
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
7.6 Sample programs
Example 1 - Functional example
#Para_Expr
DECLARE void MoveCorner ()
DECLARE void MoveCircle (int number)
DECLARE float StartPos ()
DECLARE double EndPos (float value)
float GlobalVar
G00 X0 Y0 Z0
GlobVar = -2
MoveCorner ()
MoveCircle (3)
G01 X=StartPos() Y=Startpos()
G01 X=EndPos(GlobalVar) Y=EndPos(GlobalVar*2)
M30
void MoveCorner () ;Function, without argument, without return value
{
G01 Y10
X10
Y0
X0
}
void MoveCircle (int number) ;Function, with argument, without return value
{
FOR (, Number >0, Number=Number-1)
{
G02 X0 Y0 I10 J0
}
}
MotionOne CM - G&M Code Programming Manual
float StartPos () ;Function, without argument, without return value
{
RETURN (3.141)
}
double EndPos (float value)() ;Function, with argument, with return value
{
RETURN value=value*3.7
}
115
Example 2 - Rectangle
#Para_Expr
DECLARE void rectangle (float Xvalue, float Yvalue)
F1000
G01 X0 Y0 Z0 ;Move to zero
Rectangle (10,10) ;Move rectangle 10x10
G01 X25 Y25 Z0 ; 2nd Position
Rectangle (7.453,13.443) ;2. Move rectangle
G93 W60 ;Turn coordinates system by 60 degrees
G01 X-14 Y-25 ;3rd Position
Rectangle (7.453,13.443) ;3. Move rectangle
M30
void rectangle (float Xvalue, float Yvalue) ;Definition of the function Rectangle
{
G91
G01 Y=Yvalue
X=Xvalue
Y=-Yvalue
X=-Xvalue
G90
}
Bild 6.2: Rectangle example (Example 2)
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
7 Flexible G&M code Programming (FlexProg)
MotionOne CM - G&M Code Programming Manual
116
7 Flexible G&M code Programming (FlexProg)
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
Example 3 - Loops
#Para_Expr
Q1=0 Q2=30 ;X and Y width
Q4=6 ;miller diameter
Q5=Q2/2 Q6=50 Q7=1 Q10=3 Q11=3
Q99=1
F4000
G72 ;scaling off
G90 ;Rel.
G00 X0 Y0 Z0
G91
G01
[Main]
SWITCH (Q7)
{
CASE 1:
Q7=Q7+1
GOTO Loop normo
BREAK
CASE 2:
Q7=Q7+1
GOTO Loop inverse
BREAK
CASE 3:
Q7=Q7+1
GOTO Move eight
BREAK
DEFAULT: GOTO end ;! Do not forget colon
BREAK
}
[Loop normo]
WHILE (Q6<100) ;WHILE loop (45 runs)
{
X10
Y-3
FOR (,Q5>10,Q5=Q5 -1) ;FOR loop (4 runs)
{
Y10
DO ;DO ... WHILE loop (5 runs)
{
X-3 Y-5
Y+7
X+5
Q4=Q4 - 0.7
}
WHILE (Q4>2)
Y-10
X5
}
Q6=Q6 +1.1
GOTO Main
}
[loop inverse]
G73 X-1 Y-1
Q6=50 Q5=15 Q4=6 Q99=1
117
WHILE (Q6<100) ;WHILE loop (45 runs)
{
X10
Y-3
FOR (,Q5>10,Q5=Q5-1) ;FOR loop (4 runs)
{
Y10
DO ;DO ... WHILE loop (5 runs)
{
X-3 Y-5
Y+7
X+5
Q4=Q4 -0.7
}
WHILE (Q4>2)
Y-10
X5
}
Q6=Q6+1.1
GOTO Main
}
Bild 6.3: Loops example (Example 3)
[Move eight]
G01 X0 Y0 Z0
G02 X=Q1 Y=Q1 I=Q2 J=Q1
WHILE Q7>1
{
G73 X= (-Q7 * 0.25) Y= (-Q7 * 0.25)
G02 X0 Y0 I25 J0
G01 X0 Y0 Z0
G72
Q7=Q7-1
}
G01 X0 Y0 Z0
M30
[End]
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
7 Flexible G&M code Programming (FlexProg)
MotionOne CM - G&M Code Programming Manual
118
8 Index
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
8 Index
Block search
119
26
C
5
5-axis transformation
27
A
Absolute circle centre
67
Absolute measure entry
58
Absolute zero offset
61
Activate PRESET
43
Angle of rotation
19
Angular position
44
Anti-clockwise
19
Arc
19
ASCII texts
25
Axis orientation
28
B
Block numbers
Change of plane
30
Circle centre
67
Circular interpolation
19
Clamping position
63
Clockwise
19
Comment
14
Communication variables
107
Comparison operators
101
Compensation plane
38-39
Continuous operation axis
75
Continuous operation rotation
75
Coordinate rotation
Copyright
Cycle execution
46, 48, 50, 59, 61
3
57
D
13
Data type
Deactivate PRESET
103
43
DEF
17
FlexProg code
Delete zero offset
47
Free plane
Deleting mirroring
55
Function declaration
104
Dimensions
53
Function definition
105
Direction of rotation
19
Direction vector
35, 65
Dwell time
20
102
29
G
Global variables
106
I
E
EIT
64
Inches
53
Eroding
15, 65
Incremental dimensioning
58
Exact stop
51-52
Incremental measure input
58
Interpolation plane
23
Inverse time programming
64
Inverse Time Programming
64
Exclusion of Liability
7
Expressions
107
F
F parameter
18
Feed movement
18
Feed rate
18
Flexible G&M code Programming
102
FlexProg
102
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
8 Index
J
Jump marks
101
K
Kinematics
33
MotionOne CM - G&M Code Programming Manual
120
8 Index
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
L
Lift-off movement
Local variables
121
N
65
106
Log file
66
Look Ahead
52
M
Nibble function
87
NIT
64
not modal
13
O
Offset
32
M-codes
14
Offset number
76
Machine kinematics
33
Offset vectors
59
Macro
22
Offsets
59
Macro call
22
Online polynomials
36
Macros
105
Operand
Milling cutter radius correction
37
Operating plane
Milling cutter radius correction left
38
Operators
Milling cutter radius correction right
39
Milling cutter radius correction up to
40
Milling cutter radius correction via
41
Mirror image machining
Mirroring and RTCP
modal
54-55
28
13, 17
107
23
107
P
P5 Interpolation
36
Parameter instructions
101
Parameter programming
101
Polynomials
36
Position
17
Relative measure
58
Position transformation
27
Relative zero offset
59
Positioning
18
Rescue point
26
Pre-enable for stroke
88
Responsibility
10
PRESET
42
Rotary axes
75
PRESET offset
43
Rotated Coordinate System
63
Probe calibration
66
Rotation
29, 33
Program branches
101
Rotation Tool Centre Point
27
Program loops
101
RTCP
27
Program PRESET
44
Programming coordinate system
29
Punching
87
Safety
9
Punching functionality
87
Scaling
54
Sign inversion
55
Simple measurement block
71
Spatial arc interpolation
21
R
RCS
50
S
RCS function
50, 63
Special characters
14
RCS1
42, 44
Speed programming
63
RCS2
63
Spindle offset
76
RCS2 rotation
48
Spline arc point
35
Relative circle centre
68
Spline head data
35
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
8 Index
MotionOne CM - G&M Code Programming Manual
122
8 Index
MotionOne CM - G&M Code Programming Manual
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
Spline interface
35
Subroutine call
24
Support
7
V
Variables
106
W
T
Table of contents
4
Target group
6
Target position in the coordinate system
58
TCP
27
Text functions
25
Time programming
64
Tool correction
37
Tool path correction
123
38-39
Tool zero point
32
Tool zero point compensation
33
U
Units of measurement in inches
53
Units of measurement in mm
53
Warnings
9
Z
Zero offset
Zero offset table
46, 48-49, 78
78
LTI Motion GmbH
Gewerbestraße 5-9
35633 Lahnau
Deutschland
Phone +49 6441 966-0
Fax +49 6441 966-137
www.lti-motion.com
info@lti-motion.com
LTI Motion GmbH
Am Weiher 2
88142 Wasserburg
Germany
Phone +49 8382 9855-0
Id.-Nr.: 1400.210B.0-02 Version: 02/2019
MotionOne CM - G&M Code Programming Manual
124
Download