轴映射与轨迹平面(Axis Mapping and Trajectory Planes)
1. 轴地址与默认映射
G代码使用 9个字母地址(X、Y、Z、U、V、W、A、B、C) 表示机床轴。
默认情况下,GSP(G代码解析器)会将这些字母轴映射到物理轴 0~8(即X→0,Y→1,Z→2,U→3,V→4,W→5,A→6,B→7,C→8)。
如果控制器重新定义轴映射(例如在D缓冲区使用
axisdef
语句),则GSP会遵循新的映射规则。
示例:
axisdef X=4, Y=12, A=0 ; 重新定义X→轴4,Y→轴12,A→轴0
此时:
X 对应物理轴 4(默认是轴0)
Y 对应物理轴 12(默认是轴1)
A 对应物理轴 0(默认是轴6)
其余轴(Z、U、V、W、B、C)仍按默认映射。
⚠ 注意:避免映射冲突!
例如,如果
X=4
,而V
默认映射到轴4,此时 V轴不能再使用,否则会导致冲突。
2. 轨迹平面(G17/G18/G19)
G代码支持 3种轨迹平面,用于定义 直线(G01)和圆弧(G02/G03)的插补平面:
G代码 | 轨迹平面 | 适用轴 | 说明 |
---|---|---|---|
G17 | XY平面 | X, Y | 默认,适用于2D轮廓加工 |
G18 | XZ平面 | X, Z | 适用于车床类加工 |
G19 | YZ平面 | Y, Z | 特殊场景使用 |
关键规则:
圆弧(G02/G03)只能在XY、XZ或YZ平面上定义,由G17/G18/G19选择。
直线(G01)可以在任意轴上移动,但只有当前轨迹平面(如XY)的轴会进行 连续轨迹规划(Look-Ahead),其他轴被视为 点对点(PTP)运动。
G00(快速定位)不受轨迹平面限制,所有轴均为PTP运动。
示例:
G17 ; 选择XY平面(默认) G01 X10 Y20 ; XY轴进行连续轨迹插补 G01 Z5 ; Z轴独立运动(PTP模式) G02 X20 Y30 I5 J0 ; XY平面圆弧插补 G18 ; 切换到XZ平面 G01 X15 Z10 ; XZ轴进行连续插补
3. 轨迹规划与多轴运动
当前轨迹平面的轴(如G17的X/Y) 会进行 前瞻(Look-Ahead)优化,确保平滑运动。
非当前平面的轴(如G17下的Z轴) 被视为独立运动,不参与轨迹优化。
G00(快速移动) 所有轴均为点到点(PTP)运动,无插补优化。
示例:
G17 ; XY平面 G01 X10 Y20 ; XY连续插补 G01 Z30 ; Z独立运动(PTP) G00 X0 Y0 Z0 ; 所有轴快速回零(PTP)
总结
轴映射
默认X→0, Y→1, ..., C→8。
可通过
axisdef
自定义映射,但需避免冲突。
轨迹平面
G17(XY):默认平面,适用于2D加工。
G18(XZ):车床常用。
G19(YZ):特殊需求。
圆弧(G02/G03)仅限当前平面,直线(G01)可混合运动。
运动模式
G01/G02/G03:当前平面轴优化,其他轴独立。
G00:所有轴PTP运动。
通过合理设置轴映射和轨迹平面,可灵活适应不同机床结构和加工需求。