通用赋值指令(M1510)
M1510 是一种通用的变量赋值指令,可通过以下地址参数设置变量值:
地址 | 用途 |
---|---|
T | 目标变量的标签(变量名) |
I | 当变量为一维数组时,指定索引 |
J | 当变量为二维数组时,指定第二维索引 |
P | 变量的新值(按变量自身的单位) |
使用规则
-
变量类型与必需参数
-
标量变量(非数组):仅需
T
和P
。M1510 TMyVar P100 ; 将标量变量MyVar的值设为100
-
一维数组:需
T
、I
(索引)和P
。M1510 TMyArray I2 P50 ; 将MyArray[2]设为50
-
二维数组:需
T
、I
(第一维索引)、J
(第二维索引)和P
。M1510 TMyMatrix I1 J3 P20 ; 将MyMatrix[1][3]设为20
-
-
数值取整规则
-
T、I、J 的值始终向远离零的方向取整(如
1.5 → 2
,-1.5 → -2
)。 -
P 的值:
-
若目标变量是整数类型,则同样向远离零的方向取整。
-
若为浮点数,则保留原始值。
-
-
-
运行时错误条件
-
缺少必需地址(如数组未提供
I
或J
)。 -
使用非必需地址(如标量变量提供了
I
)。 -
与其他G/M代码混用(如
M1510 G01
)。 -
T地址的标签无效(变量未定义)。
-
P地址的值超出变量范围(如赋值超出数组边界)。
-
I/J地址的索引无效(如负数或超出数组维度)。
-
示例与注意事项
✅ 合法用法
M1510 TSpeed P500 ; 设置标量变量Speed=500 M1510 TDataArray I0 P10 ; 设置一维数组DataArray[0]=10 M1510 TGrid I2 J1 P30 ; 设置二维数组Grid[2][1]=30
❌ 错误用法
M1510 TMyVar ; 错误:缺少P地址 M1510 TArray P5 ; 错误:数组未提供I索引 M1510 TMatrix I1 P10 ; 错误:二维数组未提供J索引 M1510 G01 TVar P100 ; 错误:与其他G代码混用
关键总结
-
严格参数匹配:根据变量类型(标量/数组)提供对应的地址。
-
取整逻辑:注意
T/I/J
强制取整,P
根据变量类型决定是否取整。 -
错误预防:避免索引越界、标签无效或指令混用。
此功能适用于动态修改变量值(如加工参数、坐标偏移等),但需确保符合语法规则,否则会触发运行时错误。
特定变量赋值指令(M1511-M1514)
这些指令用于直接设置轴运动参数(如加速度、加加速度、减速度等),支持按轴(X/Y/Z/U/V/W/A/B/C)单独赋值。
指令功能与对应变量
指令 | 控制的变量 | 单位(公制G21) | 单位(英制G20) |
---|---|---|---|
M1511 | ACC (加速度) | mm/min² | inch/min² |
M1512 | JERK (加加速度) | mm/min³ | inch/min³ |
M1513 | DEC (减速度) | mm/min² | inch/min² |
M1514 | KDEC (紧急减速度) | mm/min² | inch/min² |
M1515-M1529 | 保留 | — | — |
语法规则
-
地址与赋值
-
通过轴地址(X/Y/Z等)指定目标轴,值为对应的参数。
-
未指定的轴保持不变。
-
示例:
M1511 X100 Y25 ; 设置X轴加速度=100 mm/min²,Y轴=25 mm/min² M1513 Z50 ; 仅设置Z轴减速度=50 mm/min²(其他轴不变)
-
-
单位转换
-
根据当前模态(
G20
/G21
)自动转换单位:-
G21
(公制):输入值单位为 mm/min²(M1512为mm/min³)。 -
G20
(英制):输入值单位为 inch/min²(M1512为inch/min³)。
-
-
同时受
G221
(全局单位缩放因子)影响。
-
-
错误条件
-
值超出范围(如负值或超出硬件限制)。
-
使用无效轴地址(如未定义的轴名)。
-
示例
公制模式(G21)
G21 ; 设置为公制单位 M1511 X100 Y25 ; X轴加速度=100 mm/min²,Y轴=25 mm/min² M1512 X500 ; X轴加加速度=500 mm/min³ M1513 X200 Y100 ; X轴减速度=200 mm/min²,Y轴=100 mm/min² M1514 X500 Y500 ; X/Y轴紧急减速度=500 mm/min²
英制模式(G20)
G20 ; 设置为英制单位 M1511 X3.94 Y0.98 ; X轴加速度≈3.94 inch/min²,Y轴≈0.98 inch/min²
注意事项
-
模态依赖
-
单位取决于当前的
G20
/G21
状态,需确保模式正确。
-
-
参数范围
-
各轴参数需符合控制器硬件限制,否则触发运行时错误。
-
-
保留指令
-
M1515-M1529
为保留指令,不可随意使用。
-
-
与其他指令的兼容性
-
不可与其他G/M代码混用(如
M1511 G01
会报错)。
-
应用场景
-
动态调整运动参数:根据加工需求实时修改加速度/减速度。
-
多轴差异化设置:为不同轴分配不同的运动特性。
-
单位兼容性:自动处理公制/英制单位转换。
通过这类指令,可精细化控制机床运动性能,适应复杂加工条件。