Appearance
队列模式运动通讯
1. socket控制追加模式运动
1.1 开启/关闭socket直接控制运动模式
开启后会进入特殊的运行模式,关闭后需要手动切回示教模式。
消息ID: 0x50B1 DIRECTMOTION_MODE_SET
请求参数
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| robot | number | 是 | 机器人编号(1, 2, 3, 4) |
| open | boolean | 是 | true=开启, false=关闭 |
请求示例
json
{
"robot": 1,
"open": true
}1.2 控制器返回开启成功/失败
消息ID: 0x50B3 DIRECTMOTION_MODE_RESPOND
响应参数
| 参数名 | 类型 | 说明 |
|---|---|---|
| robot | number | 机器人编号 |
| open | boolean | 当前状态 |
响应示例
json
{
"robot": 1,
"open": true
}1.3 发送作业文件指令队列
消息ID: 0x50B4 DIRECTMOTION_INSERT_INSTRVEC
请求参数
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| robot | number | 是 | 机器人编号 |
| data | array | 是 | 指令json列表 |
data 数组元素参数
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| type | number | 是 | 指令类型:1=点到,2=直线,3=圆弧,4=整圆 |
| positionId | string | 条件 | 全局点位(使用全局GP点时必填) |
| RobotPos | object | 条件 | 自定义点位(使用自动点位时必填) |
| ParaACC | object | 是 | 加速度参数 |
| ParaDEC | object | 是 | 减速度参数 |
| ParaV | object | 是 | 速度参数 |
| ParaPL | object | 是 | 平滑参数 |
| ParaTIME | object | 是 | 提前执行时间(ms) |
| ParaSPIN | object | 否 | 圆弧和整圆指令:0=姿态不变 1=六轴不转 2=六轴旋转 |
| ParaSYNC | object | 否 | 变位机是否同步 |
| imovecoord | string | 否 | 移动坐标系 |
| ctype | number | 否 | 坐标系类型 |
| length | number | 否 | 长度 |
| radius | number | 否 | 半径 |
| margin | number | 否 | 边界 |
| offsetAxis | number | 否 | 轴偏移 |
| polish | number | 否 | 打磨参数 |
| polishAngle | number | 否 | 打磨角度 |
| polishID | number | 否 | 打磨ID |
| posidname | string | 否 | 点位名称 |
| posidtype | number | 否 | 点位类型 |
| logout | boolean | 否 | 登出 |
| para | number | 否 | 预留参数 |
| side | number | 否 | 侧面 |
| userParamInt | number | 否 | 用户自定义整数 |
| userParamString | string | 否 | 用户自定义字符串 |
| width | number | 否 | 宽度 |
ParaACC / ParaDEC / ParaV / ParaPL / ParaTIME / ParaSPIN / ParaSYNC 参数结构
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| data | number | 是 | 参数值 |
| m_vUnit | number | 条件 | 速度单位(ParaV时必填):0=cm/s 1=mm/s 2=百分比 |
| secondvalue | number | 否 | 第二值 |
| value | number | 否 | 旧版参数值 |
| varname | string | 否 | 变量名 |
RobotPos 参数结构
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| ctype | number | 是 | 坐标系类型:0-关节 1-直角 2-工具 3-用户 |
| data | array | 是 | 位置数据数组 |
| key | string | 否 | 键名 |
| paraVarData | array | 否 | 参数变量数据 |
data 数组坐标说明(ctype 决定坐标系)
| 索引 | 名称 | 说明 |
|---|---|---|
| 0 | 坐标系 | 0-关节、1-直角、2-工具、3-用户 |
| 1 | 单位 | 角度-0、弧度-1 |
| 2 | 形态 | 形态值 |
| 3 | 工具工艺号 | 工具编号 |
| 4 | 用户工艺号 | 用户编号 |
| 5-6 | 预留 | 预留字段 |
| 7 | J1/X | X坐标值 |
| 8 | J2/Y | Y坐标值 |
| 9 | J3 | J3值 |
| 10 | J4 | J4值 |
| 11 | J5 | J5值 |
| 12 | J6 | J6值 |
| 13 | J7 | J7值 |
| 14-19 | 预设值 | 预设位置数据 |
1.4 案例一:采用全局GP点
json
{
"data": [
{
"ParaACC": {
"data": 25.0,
"secondvalue": 0,
"value": 0,
"varname": ""
},
"ParaDEC": {
"data": 25.0,
"secondvalue": 0,
"value": 0,
"varname": ""
},
"ParaPL": {
"data": 0.0,
"secondvalue": 0,
"value": 0,
"varname": ""
},
"ParaSPIN": {
"data": 0.0,
"secondvalue": 0,
"value": 0,
"varname": ""
},
"ParaSYNC": {
"data": 0.0,
"secondvalue": 0,
"value": 0,
"varname": ""
},
"ParaTIME": {
"data": 0.0,
"secondvalue": 0,
"value": 0,
"varname": ""
},
"ParaV": {
"data": 25.0,
"m_vUnit": 2,
"secondvalue": 0,
"value": 0,
"varname": ""
},
"ctype": 0,
"imovecoord": "UF",
"length": 0.0,
"logout": false,
"margin": 0.0,
"offsetAxis": 0,
"para": 0,
"polish": 0,
"polishAngle": 0.0,
"polishID": 1,
"posidname": "",
"posidtype": 0,
"positionId": "GP0015",
"radius": 0.0,
"side": 0.0,
"type": 1,
"userParamInt": 0,
"userParamString": "",
"width": 0.0
},
{
"ParaACC": {
"data": 100.0,
"secondvalue": 0,
"value": 0,
"varname": ""
},
"ParaDEC": {
"data": 100.0,
"secondvalue": 0,
"value": 0,
"varname": ""
},
"ParaPL": {
"data": 5.0,
"secondvalue": 0,
"value": 0,
"varname": ""
},
"ParaSPIN": {
"data": 0.0,
"secondvalue": 0,
"value": 0,
"varname": ""
},
"ParaSYNC": {
"data": 0.0,
"secondvalue": 0,
"value": 0,
"varname": ""
},
"ParaTIME": {
"data": 0.0,
"secondvalue": 0,
"value": 0,
"varname": ""
},
"ParaV": {
"data": 1000.0,
"m_vUnit": 1,
"secondvalue": 0,
"value": 0,
"varname": ""
},
"ctype": 0,
"imovecoord": "UF",
"length": 0.0,
"logout": false,
"margin": 0.0,
"offsetAxis": 0,
"para": 0,
"polish": 0,
"polishAngle": 0.0,
"polishID": 1,
"posidname": "",
"posidtype": 0,
"positionId": "GP0001",
"radius": 0.0,
"side": 0.0,
"type": 2,
"userParamInt": 0,
"userParamString": "",
"width": 0.0
}
],
"robot": 1
}1.5 案例二:采用自动点位
json
{
"data": [
{
"ParaACC": {
"data": 10.0,
"secondvalue": 0,
"value": 0,
"varname": ""
},
"ParaDEC": {
"data": 10.0,
"secondvalue": 0,
"value": 0,
"varname": ""
},
"ParaPL": {
"data": 0.0,
"secondvalue": 0,
"value": 0,
"varname": ""
},
"ParaSPIN": {
"data": 0.0,
"secondvalue": 0,
"value": 0,
"varname": ""
},
"ParaSYNC": {
"data": 0.0,
"secondvalue": 0,
"value": 0,
"varname": ""
},
"ParaTIME": {
"data": 0.0,
"secondvalue": 0,
"value": 0,
"varname": ""
},
"ParaV": {
"data": 10.0,
"m_vUnit": 2,
"secondvalue": 0,
"value": 0,
"varname": ""
},
"RobotPos": {
"ctype": 1,
"data": [
0.0,
0.0,
8.0,
0.0,
0.0,
0.0,
0.0,
0.999998884198,
1.999999207078,
2.999999330055,
3.999999217981,
4.999999652293,
5.999998732478,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0
],
"key": "",
"paraVarData": [
{ "data": 0.0, "secondvalue": 0, "value": 0, "varname": "" },
{ "data": 0.0, "secondvalue": 0, "value": 0, "varname": "" },
{ "data": 8.0, "secondvalue": 0, "value": 0, "varname": "" },
{ "data": 0.0, "secondvalue": 0, "value": 0, "varname": "" },
{ "data": 0.0, "secondvalue": 0, "value": 0, "varname": "" },
{ "data": 0.0, "secondvalue": 0, "value": 0, "varname": "" },
{ "data": 0.0, "secondvalue": 0, "value": 0, "varname": "" },
{ "data": 0.999998884198, "secondvalue": 0, "value": 0, "varname": "" },
{ "data": 1.999999207078, "secondvalue": 0, "value": 0, "varname": "" },
{ "data": 2.999999330055, "secondvalue": 0, "value": 0, "varname": "" },
{ "data": 3.999999217981, "secondvalue": 0, "value": 0, "varname": "" },
{ "data": 4.999999652293, "secondvalue": 0, "value": 0, "varname": "" },
{ "data": 5.999998732478, "secondvalue": 0, "value": 0, "varname": "" },
{ "data": 0.0, "secondvalue": 0, "value": 0, "varname": "" },
{ "data": 0.0, "secondvalue": 0, "value": 0, "varname": "" },
{ "data": 0.0, "secondvalue": 0, "value": 0, "varname": "" },
{ "data": 0.0, "secondvalue": 0, "value": 0, "varname": "" },
{ "data": 0.0, "secondvalue": 0, "value": 0, "varname": "" },
{ "data": 0.0, "secondvalue": 0, "value": 0, "varname": "" },
{ "data": 0.0, "secondvalue": 0, "value": 0, "varname": "" }
]
},
"ctype": 0,
"imovecoord": "UF",
"length": 0.0,
"logout": false,
"margin": 0.0,
"offsetAxis": 0,
"para": 0,
"polish": 0,
"polishAngle": 0.0,
"polishID": 1,
"posidname": "",
"posidtype": 0,
"positionId": "",
"radius": 0.0,
"side": 0.0,
"type": 1,
"userParamInt": 0,
"userParamString": "",
"width": 0.0
}
],
"robot": 1
}1.6 暂停追加运行
消息ID: 0x50B7 DIRECTMOTION_MODE_SUSPEND
请求参数
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| robot | number | 是 | 机器人编号(1, 2, 3, 4) |
请求示例
json
{
"robot": 1
}1.7 开始追加运行(暂停后使用)
消息ID: 0x50B8 DIRECTMOTION_MODE_START
请求参数
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| robot | number | 是 | 机器人编号(1, 2, 3, 4) |
请求示例
json
{
"robot": 1
}1.8 停止追加运行
消息ID: 0x50B9 DIRECTMOTION_MODE_STOP
请求参数
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| robot | number | 是 | 机器人编号(1, 2, 3, 4) |
请求示例
json
{
"robot": 1
}1.9 设置队列模式停止不下电
消息ID: 0x50BA
请求参数
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| robot | number | 是 | 机器人编号(1, 2, 3, 4) |
请求示例
json
{
"robot": 1
}