Controller.Commands 命令
Controller.Commands 是命令系统的根入口,按任务和轴两层组织。本页是总索引:命令树、轴选择方式、各家族命令一览。每个命令的签名、生成指令、语义与示例见其独立说明页。
命令树结构
Controller.Commands[TaskId]
├── .Axes[axisNames / axisIndexes / axisMasks] → AxesRootCommands
│ ├── .Motion → AxesMotionCommands(.Setup 子类别)
│ └── .IO → AxesIOCommands
├── .Motion → MotionCommands(.Setup 子类别)
├── .Status → StatusCommands
├── .IO → IOCommands
├── .PCO → PCOCommands
└── .Execute(code) → object(执行任意指令字符串)
轴选择索引器
Controller.Commands.Axes 支持三种轴选择方式:
controller.Commands.Axes["X", "Y"] // 轴名字符串数组
controller.Commands.Axes[0, 1] // 轴编号整型数组
controller.Commands.Axes[new AxisMask(1), new AxisMask(2)] // 轴掩码数组
controller.Commands.Axes.Select("X", "Y") // 等效显式调用 Select
选定轴后,Axes[...].Motion / Axes[...].Motion.Setup / Axes[...].IO 上的方法不再接受轴参数,作用对象即已选轴组。同一命令的「全局形式」(Commands[TaskId].Motion.X(...),轴作参数)与「轴组形式」生成相同的指令字符串。
Commands.Motion(运动)
点位与协调运动
| 方法 | 说明 |
|---|---|
| MoveAbs | 绝对点位运动(单轴) |
| MoveInc | 增量点位运动(单轴) |
| Rapid | 快速点位,各轴按 MaxSpeedClamp 限速,可逐轴给速 |
| Linear | 多轴协调直线,前瞻规划 |
| CWCenter / CCWCenter | 顺/逆时针圆弧(IJ 圆心法) |
| FreeRun / FreeRunStop | 持续速度输出 / 停止 |
轴状态控制
| 方法 | 说明 |
|---|---|
| Enable / Disable | 使能 / 禁用轴(CiA402) |
| Home / HomeConditional | 回零 / 条件回零 |
| FaultAck | 清除轴故障 |
| Abort | 中止轴运动 |
Commands.Motion.Setup(运动模态设置)
入口 Commands[TaskId].Motion.Setup 或 Commands.Axes[...].Motion.Setup。
| 方法 | 说明 |
|---|---|
| Scurve | S 曲线平滑百分比(0~100) |
| RampType | 斜坡类型(Linear / Scurve / Sine) |
| RampRate | 加减速率(全局标量或逐轴) |
| RampRateAccel / RampRateDecel | 只设加速度 / 只设减速度 |
Commands.Status(状态查询)
详见 Status(信号枚举表、状态字位定义、MoveDone 轮询模式)。
| 方法 | 说明 |
|---|---|
| AxisStatus | 读轴状态信号(位置反馈、速度、电流、状态字等) |
| TaskStatus | 读任务状态信号 |
Commands.IO(轴抱闸)
| 方法 | 说明 |
|---|---|
| Brake | 抱闸吸合/释放(轴组形式在 Commands.Axes[...].IO) |
Commands.PCO(位置比较输出)
入口 Commands[TaskId].PCO。详见 PCO。
根命令(Commands[TaskId])
| 成员 | 说明 |
|---|---|
Execute(code) |
执行任意指令字符串,返回 $return 变量的值(若有) |
double result = (double)controller.Commands[TaskId.T01].Execute("MOVEABS X 10 10");
部分词汇没有强类型方法,只能经 Execute 下发:DWELL(等待毫秒)、F / XF(进给速度)、VELOCITY ON / VELOCITY OFF(拐角平滑开关)、ABS / INC(模态)。
相关页面
- Status - 状态读取 API
- PCO - 位置比较输出
- Tasks-OneScript - 任务与 OneScript 引擎
- Terminal 指令 - 字符串指令词汇表