en:software:mdurosettacncsoftwaregcode:supported_g_m-codes:g100

The G100 command invokes an internal PLC function that is selected via the Pp parameter value.
Usually, arguments specified in the various functions are mandatory except those enclosed in curly brackets, e.g., [Bb].
Some functions can use an incremental order of passed values as: Aa or Aa Bb or Aa Bb Cc and so on. In that case, the behavior is described in the function.

A list of available PLC functions:

Function Arguments Is Blocking Function Description
P0 NO

Defines a programmed start/resume point (track).
Control software allows a program to be started or resumed, after a STOP command, from a specific line of G-Code.
Figuring out the right places where to start/resume a program requires the end-user to have sufficient competence in understanding G-Code.
To simplify this, the G100 P0 command has been added, which defines a valid point at which these activities are possible safely and with certain results.
It will then be up to the CAD/CAM to add this command at the correct points that often match a specific machining step or cutting entity (e.g., at the beginning of a nesting element).
For example, with a Plasma cut, each G100 P0, could be placed before the block that begins cutting a track or nesting element, allowing the user to choose from which element to start cutting or resume a stopped cut.

P1 Aa Bb

Go To a position.
!!! NOT YET IMPLEMENTED !!!

P2 Aa Bb YES

Starts an axis-free movement.
Aa defines the axis (1=X, 2=Y, 3=Z, etc).
Bb defines the feed rate in mm/min.

When Bb is a positive value the axis moves in the forward direction, while a negative value makes it move backward.
Aa Bb with a value of zero stops the axis.
Prior execution of this function axis must be set as NOT interpolated using the G101 G-Code command.

P3 Aa Bb Cc Dd YES

Starts axis movement continuously from the point defined by Cc and Dd.
A is the axis (1=X, 2=Y, 3=Z, etc) B is the feed rate in mm/min.
B with zero value stops the axis.

Prior execution of this function axis must be set as NOT interpolated using the G101 G-Code command. C and D are WCS coordinates.

P4 Aa NO

Set plasma power.
Set the plasma generator current in Ampere.
This instruction doesn't stop interpolator movement and is used to update the analog output.
To use this instruction make sure to enable plasma in board settings and the active tool must be plasma type.

P5 Aa[0|1]? [Bb] YES

Set plasma voltage.
Set the plasma voltage mode with parameter Aa.
Value zero mean voltage is set by the Bb parameter.
One value means that voltage is auto-acquired after torch activation.
Bb parameter is mandatory only if Aa has zero value.

P6 Aa Bb Cc Dd Ee Ff Hh [I[0|1|2]?] YES

Plasma Probing Z Position and Active Plasma with THC.
Aa defines the Z-Axis Feed.
Bb defines the Z-Axis Touch Target Position (MCS without Tool Length).
Cc defines the Z-Axis Touch Feed.
Dd defines the Piercing Height.
Ee defines the Piercing Delay.
Ff defines the Timeout for Torch Arc Ok Input.
Hh defines the Working Height.
Ii defines the Function Mode (optional):

  • 0 = Normal mode: The function does plasma touch and active THC (comparator is not active, it must be activated with a G100 P7 A1)
  • 1 = Normal mode: The function does plasma touch but doesn't activate THC.
  • 2 = Special mode: Reset Dd Ee Hh current offsets in PLC.
  • 3 = Special mode: Set new Dd Ee Hh values in PLC (so they can be seen by the user before running the program).

Normal Mode Operations Sequence
1] Start probing Z-Axis movement to the Bb position using the Cc feed and capture the Z-Axis position at PROBE activation.
2] Move to the piercing height Dd using the Aa feed. This is a relative height to the Z-Axis position captured by the PROBE.
3] Active plasma torch with M03.
4] Wait, for the maximum time of the Ff parameter, for the Torch Arc Ok input to become active.
5] Wait for the piercing time Ee.
6] Move Z to work position Ii using the A feed. This is a relative position to the acquired probing value.
7] Unlink Z-Axis from interpolator to be managed by THC (if THC is active, see Ii value).

P7 A[0|1]? NO

THC comparator control state setting.
Aa defines the comparator control state:

  • 0 = The THC comparator control is OFF.
  • 1 = The THC comparator control is ON.

This instruction is used to enable or disable the THC comparator stage.
The command takes effect only if placed after an M17 or G100 P6 and before an M18.
To use this instruction make sure to enable plasma in board settings and the active tool must be plasma type.

PS:
By default G100 P7 is a mechanical command which stops movements when called.
To change its behaviour place this command in top of program or in start.ngc macro:

; Set to 1 in plasma cutting so it is possible to use the G100 P7 instruction to enable disable THC comparator
G10 L101 P550 V1

P8 A[1|2|3|11|12|13]? NO

Lube start request for axis and/or spindle.
Aa defines the lube start request:

  • 1 = Lube start request for axis.
  • 2 = Lube start request for spindle.
  • 3 = Lube start request for axis and spindle.
  • 11 = Clear lube cycles done counter for axis.
  • 12 = Clear lube cycles done counter for spindle.
  • 13 = Clear lube cycles done counter for axis and spindle.
P1000 Aa Bb Cc Dd Ee Ff Hh Ii YES

Update Modbus shared area.
Please refer to RosettaCNC plugin Modbus for details.
The current implementation requires making use of a consecutive sequence of arguments, starting from Aa.
Examples: Aa or Aa Bb or Aa Bb Cc and so on till Ii.

Examples

Example 1: G100 P2

( © 2020 by RosettaCNC Motion             )
 
G21 G40 G49 G90 G54 G50 G69
G101 P47 ; Axes X,Y,Z,A,C will be interpolated
G0 X0 Y0 Z0 A45 C90
 
G101 P27 ; Axes X,Y,Z and C will be interpolated. A can be moved 
G100 P2 A4 B1000 ; Start axis A free forward rotation at 1000°/min
 
G100 P2 A6 B-500 ; Start axis C free backward rotation at 500°/min
 
G100 P2 A4 B0 ; Stop axis A free rotation
 
G101 P47 ; Warning after this line A and C will be interpolated again and their position will be forced by the first motion command that is met.
 
; With the following command
; A will be moved to the last interpolated position that is 45
; C will be moved to the last interpolated position that is 90.
; To prevent that you should specify explicitly the target positions of all the axes that were moved in non interpolated mode.
G1 X10 
 
; ...
M2

Example 2: G100 P1000

( © 2020 by RosettaCNC Motion             )
 
G100 P1000 A10 ; Write value 10 for parameter A of Modbus shared area
G100 P1000 A2 B3 C4 ; Write new values for parameters A, B, C
G100 P1000 B3 A2 C4 ; This is equivalent to previous line: the order of arguments is irrelevant
 
G100 P1000 B3 C4 ; This command does not work. Current implementation does not raise errors, but parameters will not be changed
 
M2
  • Last modified: 2023/05/10 15:28
  • (external edit)