Linear(C#)
签名: 全局形式(controller.Commands[TaskId.T01].Motion):
public void Linear(string[] axisNames, double[] Distance)
public void Linear(string axisName, double Distance)
public void Linear(int[] axisIndexes, double[] Distance)
public void Linear(int axisIndex, double Distance)
public void Linear(AxisMask axisMask, double[] Distance)
public void Linear(AxisMask axisMask, double Distance)
// 以下 6 个重载在末尾多一个 double CoordinatedSpeed
public void Linear(string[] axisNames, double[] Distance, double CoordinatedSpeed)
public void Linear(string axisName, double Distance, double CoordinatedSpeed)
public void Linear(int[] axisIndexes, double[] Distance, double CoordinatedSpeed)
public void Linear(int axisIndex, double Distance, double CoordinatedSpeed)
public void Linear(AxisMask axisMask, double[] Distance, double CoordinatedSpeed)
public void Linear(AxisMask axisMask, double Distance, double CoordinatedSpeed)
轴组形式(controller.Commands.Axes["X","Y"].Motion,轴已预选):
public void Linear(double[] Distance)
public void Linear(double[] Distance, double CoordinatedSpeed)
多轴协调直线运动,轨迹进入前瞻规划,连续平滑。
所属:Controller.Commands · 协调运动
参数
| 参数 | 说明 |
|---|---|
axisNames / axisIndexes / axisMask |
参与插补的轴(全局形式) |
Distance |
各轴终点/距离,长度必须与轴数一致,否则抛出 ArgumentOutOfRangeException;解释方式跟随 ABS/INC 模态 |
CoordinatedSpeed |
可选。合成进给速度;省略时可用 Execute("F <速度>") 预设 |
生成的指令
LINEAR <轴1> <终点1> [<轴2> <终点2> …] [F <协调速度>]
说明
- 两轴及以上协调运动用
Linear;互不干扰的并行运动请拆分到不同任务。 - 端点解释跟随 Scurve 所在任务的 ABS/INC 模态(默认增量)。
- 异步受理、同任务串行(
MotionError(53))语义同 MoveAbs。
示例
var cmds = controller.Commands[TaskId.T01];
cmds.Motion.Linear(new[] { "X", "Y" }, new[] { 100.0, 50.0 }, 200); // 直线到 (100, 50),合成速度 200
cmds.Motion.Linear("X", 100, 200); // 单轴形式
// 轴组形式
var xy = controller.Commands.Axes["X", "Y"].Motion;
xy.Linear(new[] { 100.0, 50.0 }, 200);
相关页面
- Terminal LINEAR — 字符串指令语法
- OneScript Linear — 脚本侧语义
- Rapid — 快速点位
- CWCenter — 顺时针圆弧