独立轴
独立轴参数
设置独立轴界面参数
命令字: 0x2800
参数说明:
| 参数名 | 类型 | 说明 |
|---|---|---|
| axisNum | int | 轴编号 |
| angularDistanceConversionRatioValue | double | 转换比 |
| isTrack | bool | 是否是地轨 |
| encoderBitLineditValue | double | 编码器位数 |
| inverseLimitValue | double | 反限位 |
| maximumPositiveSpeedValue | double | 最大正转速;单位:倍率 |
| maximumReverseSpeedValue | double | 最大反转速;单位:倍率 |
| motorDir | int | 电机方向;1:正,-1:负 |
| positiveLimitValue | double | 正限位 |
| ratedPositiveSpeedValue | double | 额定正转速;单位:rpm |
| ratedReverseSpeedValue | double | 额定反转速;单位:rpm |
| reductionRatioValue | double | 减速比 |
| maxAccValue | double | 最大加速度;单位:速度的倍率 |
| maxDecValue | double | 最大减速度;单位:速度的倍率 |
| selectBindServo | uint | 选择需要绑定的伺服编号 |
请求示例:
json
{
"independentAxisParameter": {
"axisNum": 0,
"angularDistanceConversionRatioValue": 0.0,
"isTrack": false,
"encoderBitLineditValue": 0.0,
"inverseLimitValue": 0.0,
"maximumPositiveSpeedValue": 0.0,
"maximumReverseSpeedValue": 0.0,
"motorDir": 0,
"positiveLimitValue": 0.0,
"ratedPositiveSpeedValue": 0.0,
"ratedReverseSpeedValue": 0.0,
"reductionRatioValue": 0.0,
"maxAccValue": 0.0,
"maxDecValue": 0.0,
"selectBindServo": 0
}
}上位机查询独立轴界面参数
命令字: 0x2801
参数说明:
| 参数名 | 类型 | 说明 |
|---|---|---|
| axisNum | int | 轴编号 |
请求示例:
json
{
"axisNum": 1
}控制器返回独立轴界面参数
命令字: 0x2802
返回参数同 0x2800 设置命令。
上位机查询独立轴总数
命令字: 0x2803
参数说明:
无请求参数。
控制器返回独立轴总数
命令字: 0x2804
参数说明:
| 参数名 | 类型 | 说明 |
|---|---|---|
| axisSum | int | 独立轴总数 |
响应示例:
json
{
"axisSum": 2
}上位机删除某一个独立轴参数
命令字: 0x2805
参数说明:
| 参数名 | 类型 | 说明 |
|---|---|---|
| axisNum | int | 轴编号 |
请求示例:
json
{
"axisNum": 2
}独立轴位置
上位机查询独立轴位置
命令字: 0x2806
参数说明:
| 参数名 | 类型 | 说明 |
|---|---|---|
| axisNum | int | 轴编号 |
请求示例:
json
{
"axisNum": 2
}控制器返回独立轴位置
命令字: 0x2807
参数说明:
| 参数名 | 类型 | 说明 |
|---|---|---|
| currentPos | double | 当前位置 |
响应示例:
json
{
"currentPos": 210.01
}独立轴0点标定
命令字: 0x2808
参数说明:
| 参数名 | 类型 | 说明 |
|---|---|---|
| axisNum | int | 轴编号 |
请求示例:
json
{
"axisNum": 2
}轴独立控制弹窗
独立控制轴 PV 运动
命令字: 0x30E0
参数说明:
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| robot | int | 机器人编号 | [1,4] |
| axisNum | int | 轴编号 | - |
| vel | int | 轴速度;单位:rpm | [-6000,6000] |
| dir | int | 运动方向;1:正,-1:反向 | - |
| acc | double | 加速度 | - |
| dec | double | 减速度 | - |
请求示例:
json
{
"robot": 1,
"axisNum": 1,
"vel": 50,
"dir": 1,
"acc": 50.0,
"dec": 50.0
}独立控制轴 PV 停止
命令字: 0x30E1
参数说明:
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| robot | int | 机器人编号 | [1,4] |
| axisNum | int | 轴编号 | - |
请求示例:
json
{
"robot": 1,
"axisNum": 1
}取消轴独立控制运动
命令字: 0x30E4
参数说明:
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| robot | int | 机器人编号 | [1,4] |
| axisNum | int | 轴编号 | - |
请求示例:
json
{
"robot": 1,
"axisNum": 1
}独立轴回零
命令字: 0x30E5
参数说明:
| 参数名 | 类型 | 说明 |
|---|---|---|
| axisNum | int | 独立轴编号 |
请求示例:
json
{
"axisNum": 2
}独立轴回零停止
命令字: 0x30E6
参数说明:
| 参数名 | 类型 | 说明 |
|---|---|---|
| axisNum | int | 独立轴编号 |
请求示例:
json
{
"axisNum": 2
}独立轴点动
命令字: 0x30E7
参数说明:
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| axisNum | int | 独立轴编号 | - |
| vel | int | 速度;单位:rpm | - |
| acc | double | 加速度 | - |
| dec | double | 减速度 | - |
| dir | int | 运动方向;1:正,-1:反向 | - |
请求示例:
json
{
"axisNum": 2,
"vel": 5,
"acc": 50.0,
"dec": 50.0,
"dir": 1
}独立轴状态
上位机查询独立轴状态
命令字: 0x30E8
参数说明:
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| axisNum | int | 独立轴编号 | - |
请求示例:
json
{
"axisNum": 1
}控制器返回独立轴状态
命令字: 0x30E9
参数说明:
| 参数名 | 类型 | 说明 |
|---|---|---|
| axisNum | int | 独立轴编号 |
| currentPos | double | 当前位置 |
| currentVel | double | 当前速度;单位:rpm |
| currentTorque | double | 当前力矩 |
| status | int | 运行状态;0-停止,1-运动中,2-回零中,3-报警 |
| servoOn | bool | 伺服使能状态;true-使能,false-未使能 |
| alarmCode | int | 报警代码;0 表示无报警 |
响应示例:
json
{
"axisNum": 1,
"currentPos": 120.5,
"currentVel": 100.0,
"currentTorque": 0.5,
"status": 1,
"servoOn": true,
"alarmCode": 0
}独立轴控制
独立轴伺服使能
命令字: 0x30EA
说明: 控制独立轴伺服电机的使能/去使能状态。
参数说明:
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| axisNum | int | 独立轴编号 | - |
| enable | bool | 伺服使能;true-使能,false-去使能 | - |
请求示例:
json
{
"axisNum": 1,
"enable": true
}独立轴复位
命令字: 0x30EB
说明: 复位独立轴的报警状态。
参数说明:
| 参数名 | 类型 | 说明 |
|---|---|---|
| axisNum | int | 独立轴编号 |
请求示例:
json
{
"axisNum": 1
}独立轴停止
命令字: 0x30EC
说明: 停止独立轴的所有运动(包括点动、回零、定位运动)。
参数说明:
| 参数名 | 类型 | 说明 |
|---|---|---|
| axisNum | int | 独立轴编号 |
请求示例:
json
{
"axisNum": 1
}独立轴定位运动
独立轴绝对位置运动
命令字: 0x30ED
说明: 控制独立轴运动到指定的绝对位置。
参数说明:
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| axisNum | int | 独立轴编号 | - |
| targetPos | double | 目标位置 | 受正反限位限制 |
| vel | double | 运动速度;单位:rpm | [0, 6000] |
| acc | double | 加速度 | > 0 |
| dec | double | 减速度 | > 0 |
请求示例:
json
{
"axisNum": 1,
"targetPos": 200.0,
"vel": 100.0,
"acc": 50.0,
"dec": 50.0
}独立轴相对位置运动
命令字: 0x30EE
说明: 控制独立轴以当前位置为基准,运动指定的相对距离。
参数说明:
| 参数名 | 类型 | 说明 | 取值范围 |
|---|---|---|---|
| axisNum | int | 独立轴编号 | - |
| relativePos | double | 相对位移量;正值正向运动,负值反向运动 | 受正反限位限制 |
| vel | double | 运动速度;单位:rpm | [0, 6000] |
| acc | double | 加速度 | > 0 |
| dec | double | 减速度 | > 0 |
请求示例:
json
{
"axisNum": 1,
"relativePos": 50.0,
"vel": 80.0,
"acc": 40.0,
"dec": 40.0
}独立轴定位运动停止
命令字: 0x30EF
说明: 停止独立轴的定位运动(绝对/相对位置运动)。
参数说明:
| 参数名 | 类型 | 说明 |
|---|---|---|
| axisNum | int | 独立轴编号 |
请求示例:
json
{
"axisNum": 1
}独立轴配置
上位机查询独立轴软限位
命令字: 0x2809
参数说明:
| 参数名 | 类型 | 说明 |
|---|---|---|
| axisNum | int | 轴编号 |
请求示例:
json
{
"axisNum": 1
}控制器返回独立轴软限位
命令字: 0x280A
参数说明:
| 参数名 | 类型 | 说明 |
|---|---|---|
| axisNum | int | 轴编号 |
| positiveLimit | double | 正限位值 |
| inverseLimit | double | 反限位值 |
| enableLimit | bool | 软限位使能状态 |
响应示例:
json
{
"axisNum": 1,
"positiveLimit": 500.0,
"inverseLimit": -500.0,
"enableLimit": true
}独立轴运动说明
运动控制模式
独立轴提供以下几种运动控制方式:
| 控制方式 | 命令字 | 说明 |
|---|---|---|
| PV 运动 | 0x30E0 | 速度控制模式,以指定速度和方向持续运动 |
| 点动 | 0x30E7 | Jog 模式,按住时持续运动,松开停止 |
| 绝对定位 | 0x30ED | 运动到指定的绝对位置后停止 |
| 相对定位 | 0x30EE | 从当前位置运动指定的相对距离后停止 |
| 回零 | 0x30E5 | 回到零点位置 |
运动停止方式
| 停止方式 | 命令字 | 说明 |
|---|---|---|
| PV 停止 | 0x30E1 | 停止 PV 运动 |
| 取消运动 | 0x30E4 | 取消独立控制运动 |
| 回零停止 | 0x30E6 | 停止回零操作 |
| 通用停止 | 0x30EC | 停止所有运动 |
| 定位停止 | 0x30EF | 停止定位运动 |
操作流程
- 首先通过
0x30EA使能伺服 - 查询
0x30E9确认伺服已使能且无报警 - 发送运动命令(PV、点动、定位等)
- 通过
0x30E9监控运行状态 - 运动完成后发送停止命令
- 必要时通过
0x30EA去使能伺服