Description
The G0 and G1 commands add a linear MOVE to the queue to be performed after all previous moves are completed. A command like G1 F1000 sets the feed rate for all subsequent moves.
Usage
G0 [X<pos>] [Y<pos>] [Z<pos>] [W<angle>] [U<angle> [V<angle>]
G0 [F<rate>] [A<rate>] [S<rate>] [E<rate>]
Parameter
[F<rate>]
(mm/s) The maximum movement rate of the move between the start and endpoint. The feedrate set here applies to subsequent moves that omit this parameter.
[A<rate>]
(mm/s2) Acceleration of motion.
[S<rate>]
(mm/s) Starting velocity.
[E<rate>]
(mm/s) Finish velocity.
[X<pos>]
(mm) A coordinate on the X-axis.
[Y<pos>]
(mm) A coordinate on the Y-axis.
[Z<pos>]
(mm) A coordinate on the Z-axis.
[W<angle>]
(degree) A coordinate on the 4-axis.
[U<angle>]
(degree) A coordinate on the 5-axis.
[V<angle>]
(degree) A coordinate on the 6-axis.
Example
G01 X12
G01 F200
G01 X90.6 Y13.8
G01 X0 Y0 Z-350
G01 W90
G01 X100 Y50 Z-400 W90 U45 F200
;move to 12mm on the X-axis
;set the feedrate to 200 mm/s
;move to 90.6mm on the X-axis and 13.8mm on the Y-axis
;rotate to 90 degree on the 4-axis
;X = 100 mm, Y = 50 mm, Z = -400 mm, W = 90 °, U = 45 °, F = 200 mm/s
Note
These syntaxes are equivalent: G01, G1, G0
Description
G2 adds a clockwise arc move to the planner; G3 adds a counter-clockwise arc. An arc move starts at the current position and ends at the given XYZ, pivoting around a center-point offset given by I and J.
Usage
G2 [I<offset>] [J<offset>] [X<pos>] [Y<pos>]
G2 [F<rate>] [A<rate>] [S<rate>] [E<rate>]
Parameter
[F<rate>]
The maximum movement rate of the move between the start and endpoint. The feed rate set here applies to subsequent moves that omit this parameter.
[A<rate>]
(mm/s2) Acceleration of motion.
[S<rate>]
(mm/s) Starting velocity.
[E<rate>]
(mm/s) Finish velocity.
[I<offset>]
An offset from the current X position to use as the arc center.
[J<offset>]
An offset from the current Y position to use as the arc center.
[X<pos>]
(mm) A coordinate on the X-axis.
[Y<pos>]
(mm) A coordinate on the Y-axis.
Example
G28
G01 Z-350
G01 X50
G02 X-50 Y0 I-50 J0
G03 X50 Y0 I50 J0
Description
Pause the robot for a period of time.
Usage
G4 [P<value>]
Parameter
[P<value>]
Time in milliseconds.
Example
G01 X0 Y0 Z-350
G4 P500
G01 X100
; delay 500ms
Description
G5 creates a cubic B-spline in the XY plane with the X and Y axes only. P and Q parameters are required. I and J are required for the first G5 command in a series. For subsequent G5commands, either both I and J must be specified, or neither. If I and J are unspecified, the starting direction of the cubic will automatically match the ending direction of the previous cubic (as if I and J are the negation of the previous P and Q).
Usage
G5 [F<rate>] [I<offset>] [J<offset>] [P<offset>] [Q<offset>] [X<pos>] [Y<pos>]
Parameter
[F<rate>]
The maximum movement rate of the move between the start and endpoint. The feedrate set here applies to subsequent moves that omit this parameter.
[I<offset>]
(mm) X incremental offset from the start point to the first control point.
[J<offset>]
(mm) X incremental offset from the start point to the first control point.
[P<offset>]
(mm) A coordinate on the X-axis.
[Q<offset>]
(mm) A coordinate on the Y-axis.
[X<pos>]
(mm) A coordinate on the Y-axis.
[Y<pos>]
(mm) A coordinate on the Y-axis.
Example
G5 F200 I-40 Y20 P-20 Y-20 X20 Y-20
Description
Directly control movement angle without endpoint coordinates.
Usage
G6 [X<angle>] [Y<angle>] [Z<angle>] [P<pos>]
G6 [F<rate>] [A<rate>] [S<rate>] [E<rate>]
Parameter
[F<rate>]
The maximum movement rate of the move between the start and endpoint. The feed rate set here applies to subsequent moves that omit this parameter.
[A<rate>]
(mm/s2) Acceleration of motion.
[S<rate>]
(mm/s) Starting velocity.
[E<rate>]
(mm/s) Finish velocity.
[X<angle>]
(degree) The value of the Theta 1 angle.
[Y<angle>]
(degree) The value of the Theta 2 angle.
[Z<angle>]
(degree) The value of the Theta 3 angle.
[P<pos>]
Distance traveled.
Description
Auto-home one or more axes, moving them towards their endstops until triggered.
Usage
G28
Description
In absolute mode, all coordinates given in G-code are interpreted as positions in the logical coordinate space.
Usage
G90
Description
Set relative position mode. In this mode, all coordinates are interpreted as relative to the last position.
Usage
G91
Description
This is the command used to turn on the Delta X S robot's output pin.
Usage
Delta X S V2
M03 [Rx] [Wy]
M03 [Dx] [Wy]
Parameter
[Rx]
Relay Output: x = 0, 1, 2, 3
[Dx]
Digital Output: x = 0, 1, 2, 3
[Wy]
y = 1: turn on output pin
y = 0: turn off output pin
Do not use: turn on output pin (y = 1)
Delta X S V3
M03 [Dx] [Wy]
Parameter
[Dx]
Relay Output: x = 0, 1, 2, 3, 4, 5, 6, 7
Digital Output: x = 8, 9, 10, 11, 12, 13, 14, 15
[Wy]
y = 1: turn on output pin
y = 0: turn off output pin
Do not use: turn on output pin (y = 1)
Delta X S V2
Delta X S V3
M03 [Px] [Wy]
Parameter
[Px]
PWM Output pin: x = 0, 1
[Wy]
PWM 8bit value: y = [0, 255]
M03 [Sx] [Wy]
Parameter
[Sx]
RC Servo Control pin: x = 0, 1
[Wy]
Rotate angle: y = [0, 180] (degree)
Delta X S V4
M03 [Dx]
Parameter
[Dx]
Digital Output pin: x = 0, 1, 2, ..., 13, 14, 15
M03 [Px] [Wy]
Parameter
[Px]
PWM Output pin: x = 0, 1, 2, 3, 4, 8, 9, 10, 14, 15
[Wy]
PWM value: y = [0, 255]
M04 [Px] [Wy]
Parameter
[Px]
PWM Output pin: x = 0, 1, 2, 3, 4, 8, 9, 10, 14, 15
[Wy]
PWM value: y = [0, 65535]
Description
This is the command used to turn off the Delta X S robot's output pin.
Usage
Delta X S V2
M05 [Rx]
M05 [Dx]
M05 [Ux]
Parameter
[Rx]
Relay Output: x = 0, 1, 2, 3
[Dx]
Digital Output: x = 0, 1, 2, 3
[Ux]
x = 0: Turn off all relays
x = 1: Turn off all digital output pins
x = 2: Turn off all PWM pins
Delta X S V3
M05 [Dx]
Parameter
[Dx]
Relay Output: x = 0, 1, 2, 3, 4, 5, 6, 7
Digital Output: x = 8, 9, 10, 11, 12, 13, 14, 15
Delta X S V2
Delta X S V3
M05 [Px]
Parameter
[Px]
PWM Output pin: x = 0, 1
Delta X S V4
M05 [Dx]
Parameter
[Dx]
Digital Output pin: x = 0, 1, 2, ..., 13, 14, 15
M05 [Px]
Parameter
[Px]
PWM Output pin: x = 0, 1, 2, 3, 4, 8, 9, 10, 14, 15
Description
Read Digital and Analog input signals.
Usage
Delta X S V2
Delta X S V3
M07 [Ix]
M07 [Ax]
Parameter
[Ix]
Digital input pin: x = 0, 1, 2, 3, 4, 5
[Ax]
Analog input pin: x = 0, 1
Feedback
[Ix] [Vy]
Parameter
[Vy]
Digital input value: y = 0, 1
[Ax] [Vy]
Parameter
[Vy]
Analog input value: y = [0, 4095]
Delta X S V4
M07 [Ix]
M07 [Ax]
Parameter
[Ix]
Digital Input pin: x = 1, 2, 3, 4, 5, 6, 7, 8
[Ax]
Analog Input pin: x = 1, 2, 3, 4
Feedback
[Ix] [Vy]
Parameter
[Vy]
Digital Input value: y = 0, 1
[Ax] [Vy]
Parameter
[Vy]
Analog Input value: y = [0, 4095]
Description
Read Digital and Analog input signals automatically. For the digital signals, the robot will automatic read the value of signal when there is a change from 0 to 1 or from 1 to 0. About the analog signals, the robot will automatic read the value after a certain amount of time.
Usage
Delta X S V4
M08 [Ix] [By]
Parameter
[Ix]
Digital Input pin: x = 1, 2, 3, 4, 5, 6, 7, 8
[By]
y = 1: Start the auto-reading digital input signal process
y = 0: Stop the auto-reading digital input signal process
Feedback
[Ix] [Vy]
Parameter
[Vy]
Digital Input value: y = 0, 1
M08 [Ax] [Cy]
Parameter
[Ax]
Analog Input pin: x = 1, 2, 3, 4
[Cy]
y is time (microseconds) to update the value
y >= 100: Start the auto-reading analog input signal
y < 100: Stop the auto-reading analog input signal
Feedback
[Ax] [Vy]
Parameter
[Vy]
Analog Input value: y = [0, 4095]
Usage
M40 [Ax] [By]
Parameter
[Ax]
x = 1: Open port
x = 0: Close port
[By]
y: the Baudrate
Usage
M41 [Ax] [By]
Parameter
[Ax]
x = 1: Open port
x = 0: Close port
[By]
y: the Baudrate
Note
When control Delta X S via RS485, after each time sending a G-code command to the robot, you must wait for a response from the robot before sending the next G-code command. Otherwise, the communication will not be successful.
Usage
M42 [Ax] [By]
Parameter
[Ax]
x = 1: Open port
x = 0: Close port
[By]
y: the Baudrate
Description
This command can be used to config the 4-axis.
Usage
M60 [Dx] [Ex] [Ix] [Sx] [Rx] [Ux] [Px] [Qx] [Hx] [Ax] [Jx] [Fx]
Parameter
[Dx]
x = 1: add the 4-axis for Delta X S robot
x = 0: do not use the 4-axis
[Ex]
x = 1: use the endstop sensor
x = 0: do not use the endstop sensor
[Ix]
Set the activation sensor state
x = 1: use the HIGH level of sensor signal
x = 0: use the LOW level of sensor signal
[Sx]
Rotate speed of the 4-axis when it go home
x (unit/s)
[Rx]
Set the value that the 4-axis will move reverse to and go home again
x (unit)
[Ux]
Step per unit
x (step/unit)
[Px]
Set the max position that the 4-axis can move to
x (unit)
[Qx]
Set the min position that the 4-axis can move to
x (unit)
[Hx]
Set the home position
x (unit)
[Ax]
Set the max acceleration of the 4-axis
x (unit/s2)
[Jx]
Set the max jerk of the 4-axis
x (unit/s3)
[Fx]
Set the max rotate speed of the 4-axis
x (unit/s)
Description
This command can be used to config the 5-axis.
Usage
M61 [Dx] [Ex] [Ix] [Sx] [Rx] [Ux] [Px] [Qx] [Hx] [Ax] [Jx] [Fx]
Parameter
[Dx]
x = 1: add the 5-axis for Delta X S robot
x = 0: do not use the 5-axis
[Ex]
x = 1: use the endstop sensor
x = 0: do not use the endstop sensor
[Ix]
Set the activation sensor state
x = 1: use the HIGH level of sensor signal
x = 0: use the LOW level of sensor signal
[Sx]
Rotate speed of the 5-axis when it go home
x (unit/s)
[Rx]
Set the value that the 5-axis will move reverse to and go home again
x (unit)
[Ux]
Step per unit
x (step/unit)
[Px]
Set the max position that the 5-axis can move to
x (unit)
[Qx]
Set the min position that the 5-axis can move to
x (unit)
[Hx]
Set the home position
x (unit)
[Ax]
Set the max acceleration of the 5-axis
x (unit/s2)
[Jx]
Set the max jerk of the 5-axis
x (unit/s3)
[Fx]
Set the max rotate speed of the 5-axis
x (unit/s)
Description
This command can be used to config the 6-axis.
Usage
M62 [Dx] [Ex] [Ix] [Sx] [Rx] [Ux] [Px] [Qx] [Hx] [Ax] [Jx] [Fx]
Parameter
[Dx]
x = 1: add the 6-axis for Delta X S robot
x = 0: do not use the 6-axis
[Ex]
x = 1: use the endstop sensor
x = 0: do not use the endstop sensor
[Ix]
Set the activation sensor state
x = 1: use the HIGH level of sensor signal
x = 0: use the LOW level of sensor signal
[Sx]
Rotate speed of the 6-axis when it go home
x (unit/s)
[Rx]
Set the value that the 6-axis will move reverse to and go home again
x (unit)
[Ux]
Step per unit
x (step/unit)
[Px]
Set the max position that the 6-axis can move to
x (unit)
[Qx]
Set the min position that the 6-axis can move to
x (unit)
[Hx]
Set the home position
x (unit)
[Ax]
Set the max acceleration of the 6-axis
x (unit/s2)
[Jx]
Set the max jerk of the 6-axis
x (unit/s3)
[Fx]
Set the max rotate speed of the 6-axis
x (unit/s)
Description
This command can be used to disable steppers.
Usage
M84
Description
Automatically read current position of robot arm, 4-axis, 5-axis and 6-axis after a certain period of time.
Usage
Delta X S V4
M100 [Ax] [By]
Parameter
[Ax]
x = 1: Turn ON the automatic position reading mode
x = 0: Turn OFF the automatic position reading mode
[By]
y is the time between 2 consecutive position readings (milliseconds).
y ≥ 10 (ms)
Feedback
[X],[Y],[Z],[W],[U],[V]
Parameter
[X]
A coordinate on the X-axis (mm)
[Y]
A coordinate on the Y-axis (mm)
[Z]
A coordinate on the Z-axis (mm)
[W]
A coordinate on the 4-axis (degree)
[U]
A coordinate on the 5-axis (degree)
[V]
A coordinate on the 6-axis (degree)
Description
This command can be used to disable steppers.
Usage
M204 [A<value>]
Parameter
[A<value>]
Robot acceleration (mm/s2)
Description
Set the starting and ending speeds for each movement of the robot.
Usage
M205 [S<value>]
Parameter
[S<value>]
Starting Speed (mm/s)
Usage
M210 [Fx] [Ax] [Jx] [Sx] [Ex]
Parameter
[Fx]
Set the motion speed of X, Y, Z axes
x (mm/s)
[Ax]
Set the motion acceleration of X, Y, Z axes
x (mm/s2)
[Jx]
Set the jerk of X, Y, Z axes
x (mm/s3)
[Sx]
Set the starting speed of X, Y, Z axes
x (mm/s)
[Ex]
Set the finish speed of X, Y, Z axes
x (mm/s)
Usage
M211 [Fx] [Ax] [Jx] [Sx] [Ex]
Parameter
[Fx]
Set the motion speed of the 4-axis
x (unit/s)
[Ax]
Set the motion acceleration of the 4-axis
x (unit/s2)
[Jx]
Set the jerk of the 4-axis
x (unit/s2)
[Sx]
Set the starting speed of the 4-axis
x (unit/s)
[Ex]
Set the finish speed of the 4-axis
x (unit/s)
Usage
M212 [Fx] [Ax] [Jx] [Sx] [Ex]
Parameter
[Fx]
Set the motion speed of the 5-axis
x (unit/s)
[Ax]
Set the motion acceleration of the 5-axis
x (unit/s2)
[Jx]
Set the jerk of the 5-axis
x (unit/s3)
[Sx]
Set the starting speed of the 5-axis
x (unit/s)
[Ex]
Set the finish speed of the 5-axis
x (unit/s)
Usage
M213 [Fx] [Ax] [Jx] [Sx] [Ex]
Parameter
[Fx]
Set the motion speed of the 6-axis
x (unit/s)
[Ax]
Set the motion acceleration of the 6-axis
x (unit/s2)
[Jx]
Set the jerk of the 6-axis
x (unit/s3)
[Sx]
Set the starting speed of the 6-axis
x (unit/s)
[Ex]
Set the finish speed of the 6-axis
x (unit/s)
Description
This command will help us to know the value of the current motion parameters
Usage
M220 [Ix]
Parameter
[Ix]
x = 0: Read the parameters of X, Y, Z axes
x = 1: Read the parameters of the 4-axis
x = 2: Read the parameters of the 5-axis
x = 3: Read the parameters of the 6-axis
Description
Save all configurable settings to EEPROM.
Usage
M500
Description
Load all saved settings from EEPROM.
Usage
M501
Description
Reset all configurable settings to their factory defaults.
Usage
M502
Usage
M600 [Ax] [By]
Parameter
[Ax]
x: input pin 1
[By]
y: input pin 2
Description
Use this command when you want to skip Emergency stop
Usage
M601