十三、传送带跟踪工艺(Python)
本页对应 C++ 版。函数名与参数顺序与 C++ 完全一致(Python SDK 由 C++ 经 SWIG 生成),差异只在两处:
- 返回值形态:C++ 用引用参数回填数据;Python 的返回形态由 SWIG 绑定决定,逐接口实测,不按类型推断。
- 少数接口在 Python 中不可直接调用(绑定缺陷),页面内已逐个标注。
本页共 26 个接口,其中 26 个在 Python SDK 中存在。
功能概述
conveyor_belt_tracking_set_basic_parameter / conveyor_belt_tracking_set_basic_parameter_robot
设置传送带跟踪的基本参数(编码器、速度、坐标等)。
conveyor_belt_tracking_set_basic_parameter
def conveyor_belt_tracking_set_basic_parameter(socketFd, encoderVal, time, encoderDirection, encoderResolution, maxEncoderVal, minEncoderVal, posRecordMode, speed, userCoord, conveyorID, height, trackOnRunModeWithTargetOverrun, compensationEncoderVal):返回值:int 结果码(0 成功,负数为错误码)。本接口无数据出参。
conveyor_belt_tracking_set_basic_parameter_robot
def conveyor_belt_tracking_set_basic_parameter_robot(socketFd, robotNum, encoderVal, time, encoderDirection, encoderResolution, maxEncoderVal, minEncoderVal, posRecordMode, speed, userCoord, conveyorID, height, trackOnRunModeWithTargetOverrun, compensationEncoderVal):返回值:int 结果码(0 成功,负数为错误码)。本接口无数据出参。
参数说明(与 C++ 一致):
| 参数 | 类型 | 说明 |
|---|---|---|
| socketFd | SOCKETFD | 连接句柄 |
| robotNum | int | 机器人编号 (1-4),仅 _robot 版本 |
| encoderVal | int | 编码器当前值,单位线 |
| time | int | 跟踪补偿时间,单位毫秒 |
| encoderDirection | int | 编码器方向,用于确定正反转 |
| encoderResolution | double | 编码器分辨率,每转或每单位的脉冲数 |
| maxEncoderVal / minEncoderVal | double | 编码器最大/最小值,限制或标定读数范围,单位线 |
| posRecordMode | int | 位置记录模式:编码器/恒速设置 |
| speed | double | 传送带速度,单位 mm/s(环形传送带为 °/s) |
| userCoord | int | 用户坐标系编号,指定操作在哪个坐标下进行 |
| conveyorID | int | 传送带 ID |
| height | int | 跟踪目标高度:传感器感知/跟踪指令示教 |
| trackOnRunModeWithTargetOverrun | int | 目标超限运行方式:等待下一个目标/跳行到追踪结束运行 |
| compensationEncoderVal | int | 跟踪补偿编码器值,单位线 |
C++ 侧返回值描述:SUCCESS(0) 表示成功,-1 表示等待消息失败,-2 表示找不到指定的客户端。
conveyor_belt_tracking_set_identification_parameter / conveyor_belt_tracking_set_identification_parameter_robot
设置传送带参数识别的配置(检测源与识别方式)。
conveyor_belt_tracking_set_identification_parameter
def conveyor_belt_tracking_set_identification_parameter(socketFd, conveyorID, detectSrcType, capturePos, visionID, visionIoFilterType, visionLatchEncoderValueType, communication, sensorTrg, type):返回值:int 结果码(0 成功,负数为错误码)。本接口无数据出参。
conveyor_belt_tracking_set_identification_parameter_robot
def conveyor_belt_tracking_set_identification_parameter_robot(socketFd, robotNum, conveyorID, detectSrcType, capturePos, visionID, visionIoFilterType, visionLatchEncoderValueType, communication, sensorTrg, type):返回值:int 结果码(0 成功,负数为错误码)。本接口无数据出参。
参数说明(与 C++ 一致):
| 参数 | 类型 | 说明 |
|---|---|---|
| socketFd | SOCKETFD | 连接句柄 |
| robotNum | int | 机器人编号 (1-4),仅 _robot 版本 |
| conveyorID | int | 传送带 ID |
| detectSrcType | int | 检测源类型 |
| capturePos | int | 信号源参数(捕获位置 IO) |
| visionID | int | 视觉系统 ID |
| visionIoFilterType | int | 视觉输入输出过滤类型 |
| visionLatchEncoderValueType | int | 视觉锁存编码器值类型 |
| communication | int | 通讯方式 |
| sensorTrg | int | 传感器触发方式(0=下降沿,1=上升沿) |
| type | int | 识别类型 |
C++ 侧返回值描述:SUCCESS(0) 表示成功,-1 表示等待消息失败,-2 表示找不到指定的客户端。
conveyor_belt_tracking_set_sensor_calibration / conveyor_belt_tracking_set_sensor_calibration_robot
设置传送带上的传感器标定参数。
conveyor_belt_tracking_set_sensor_calibration
def conveyor_belt_tracking_set_sensor_calibration(socketFd, conveyorID, sensorPos):返回值:int 结果码(0 成功,负数为错误码)。本接口无数据出参。
conveyor_belt_tracking_set_sensor_calibration_robot
def conveyor_belt_tracking_set_sensor_calibration_robot(socketFd, robotNum, conveyorID, sensorPos):返回值:int 结果码(0 成功,负数为错误码)。本接口无数据出参。
参数说明(与 C++ 一致):
| 参数 | 类型 | 说明 |
|---|---|---|
| socketFd | SOCKETFD | 连接句柄 |
| robotNum | int | 机器人编号 (1-4),仅 _robot 版本 |
| conveyorID | int | 传送带 ID |
| sensorPos | const std::vector<double> | 传感器位置,长度 6 |
C++ 侧返回值描述:SUCCESS(0) 表示成功,-1 表示等待消息失败,-2 表示找不到指定的客户端。
conveyor_belt_tracking_set_tracking_range / conveyor_belt_tracking_set_tracking_range_robot
设置传送带跟踪范围参数(跟踪窗口)。
conveyor_belt_tracking_set_tracking_range
def conveyor_belt_tracking_set_tracking_range(socketFd, conveyorID, receLatestPos, trackRangeXMax, trackRangeYMax, trackRangeYMin, trackRangeZMax, trackRangeZMin, trackStartXPoint):返回值:int 结果码(0 成功,负数为错误码)。本接口无数据出参。
conveyor_belt_tracking_set_tracking_range_robot
def conveyor_belt_tracking_set_tracking_range_robot(socketFd, robotNum, conveyorID, receLatestPos, trackRangeXMax, trackRangeYMax, trackRangeYMin, trackRangeZMax, trackRangeZMin, trackStartXPoint):返回值:int 结果码(0 成功,负数为错误码)。本接口无数据出参。
参数说明(与 C++ 一致):
| 参数 | 类型 | 说明 |
|---|---|---|
| socketFd | SOCKETFD | 连接句柄 |
| robotNum | int | 机器人编号 (1-4),仅 _robot 版本 |
| conveyorID | int | 传送带 ID |
| receLatestPos | double | 最新接收位置(最迟接收 X 值) |
| trackRangeXMax | double | X 轴最大跟踪范围 |
| trackRangeYMax / trackRangeYMin | double | Y 轴最大/最小跟踪范围 |
| trackRangeZMax / trackRangeZMin | double | Z 轴最大/最小跟踪范围 |
| trackStartXPoint | double | 跟踪起始 X 点 |
C++ 侧返回值描述:SUCCESS(0) 表示成功,-1 表示等待消息失败,-2 表示找不到指定的客户端。
conveyor_belt_tracking_set_tracking_wait_point / conveyor_belt_tracking_set_tracking_wait_point_robot
标定传送带跟踪等待点的位置参数(无工件时等待位置)。
conveyor_belt_tracking_set_tracking_wait_point
def conveyor_belt_tracking_set_tracking_wait_point(socketFd, conveyorID, isWait, delayDetectTime, pos):返回值:int 结果码(0 成功,负数为错误码)。本接口无数据出参。
conveyor_belt_tracking_set_tracking_wait_point_robot
def conveyor_belt_tracking_set_tracking_wait_point_robot(socketFd, robotNum, conveyorID, isWait, delayDetectTime, pos):返回值:int 结果码(0 成功,负数为错误码)。本接口无数据出参。
参数说明(与 C++ 一致):
| 参数 | 类型 | 说明 |
|---|---|---|
| socketFd | SOCKETFD | 连接句柄 |
| robotNum | int | 机器人编号 (1-4),仅 _robot 版本 |
| conveyorID | int | 传送带 ID |
| isWait | bool | 无工件是否到指定点等待 |
| delayDetectTime | double | 等待延时时间 |
| pos | const std::vector<double> | 机器人位置坐标,含 X/Y/Z 轴坐标及三个旋转轴角度(弧度制),长度 7 |
C++ 侧返回值描述:SUCCESS(0) 表示成功,-1 表示等待消息失败,-2 表示找不到指定的客户端。
conveyor_belt_set_sensor_calibration / conveyor_belt_set_sensor_calibration_robot
标定获得传感器位置。
conveyor_belt_set_sensor_calibration
def conveyor_belt_set_sensor_calibration(socketFd, conveyorID):返回值:int 结果码(0 成功,负数为错误码)。本接口无数据出参。
conveyor_belt_set_sensor_calibration_robot
def conveyor_belt_set_sensor_calibration_robot(socketFd, robotNum, conveyorID):返回值:int 结果码(0 成功,负数为错误码)。本接口无数据出参。
参数说明(与 C++ 一致):
| 参数 | 类型 | 说明 |
|---|---|---|
| socketFd | SOCKETFD | 连接句柄 |
| robotNum | int | 机器人编号 (1-4),仅 _robot 版本 |
| conveyorID | int | 传送带 ID |
C++ 侧返回值描述:SUCCESS(0) 表示成功,负数表示失败。
conveyor_belt_calibrate_for_sensor_point / conveyor_belt_calibrate_for_sensor_point_robot
标定获得传感器位置(传感器标定流程第二步)。
conveyor_belt_calibrate_for_sensor_point
def conveyor_belt_calibrate_for_sensor_point(socketFd, conveyorID):返回值:int 结果码(0 成功,负数为错误码)。本接口无数据出参。
conveyor_belt_calibrate_for_sensor_point_robot
def conveyor_belt_calibrate_for_sensor_point_robot(socketFd, robotNum, conveyorID):返回值:int 结果码(0 成功,负数为错误码)。本接口无数据出参。
参数说明(与 C++ 一致):
| 参数 | 类型 | 说明 |
|---|---|---|
| socketFd | SOCKETFD | 连接句柄 |
| robotNum | int | 机器人编号 (1-4),仅 _robot 版本 |
| conveyorID | int | 传送带 ID |
C++ 侧返回值描述:SUCCESS(0) 表示成功,负数表示失败。
conveyor_belt_calculate_for_sensor_point / conveyor_belt_calculate_for_sensor_point_robot
计算传感器位置(传感器标定流程第三步,标定完成后计算)。
conveyor_belt_calculate_for_sensor_point
def conveyor_belt_calculate_for_sensor_point(socketFd, conveyorID):返回值:int 结果码(0 成功,负数为错误码)。本接口无数据出参。
conveyor_belt_calculate_for_sensor_point_robot
def conveyor_belt_calculate_for_sensor_point_robot(socketFd, robotNum, conveyorID):返回值:int 结果码(0 成功,负数为错误码)。本接口无数据出参。
参数说明(与 C++ 一致):
| 参数 | 类型 | 说明 |
|---|---|---|
| socketFd | SOCKETFD | 连接句柄 |
| robotNum | int | 机器人编号 (1-4),仅 _robot 版本 |
| conveyorID | int | 传送带 ID |
C++ 侧返回值描述:SUCCESS(0) 表示成功,负数表示失败。
conveyor_belt_get_basic_paramters / conveyor_belt_get_basic_paramters_robot
获取基本参数。
conveyor_belt_get_basic_paramters
def conveyor_belt_get_basic_paramters(socketFd, conveyorID, param):返回值:int 结果码(0 成功,负数为错误码)。数据通过出参结构体原地填充——先创建 nrc.ConveyorBasicParams() 传入,调用成功后按字段读取(如 obj.field;结构体不支持 list())。
conveyor_belt_get_basic_paramters_robot
def conveyor_belt_get_basic_paramters_robot(socketFd, robotNum, conveyorID, param):返回值:int 结果码(0 成功,负数为错误码)。数据通过出参结构体原地填充——先创建 nrc.ConveyorBasicParams() 传入,调用成功后按字段读取(如 obj.field;结构体不支持 list())。
参数说明(与 C++ 一致):
| 参数 | 类型 | 说明 |
|---|---|---|
| socketFd | SOCKETFD | 连接句柄 |
| robotNum | int | 机器人编号 (1-4),仅 _robot 版本 |
| conveyorID | int | 传送带 ID |
| param | ConveyorBasicParams& | 输出参数,基本参数结构体 |
C++ 侧返回值描述:SUCCESS(0) 表示成功,负数表示失败。
conveyor_belt_get_identification_paramters / conveyor_belt_get_identification_paramters_robot
获取识别参数。
conveyor_belt_get_identification_paramters
def conveyor_belt_get_identification_paramters(socketFd, conveyorID, param):返回值:int 结果码(0 成功,负数为错误码)。数据通过出参结构体原地填充——先创建 nrc.ConveyorIdentificationParams() 传入,调用成功后按字段读取(如 obj.field;结构体不支持 list())。
conveyor_belt_get_identification_paramters_robot
def conveyor_belt_get_identification_paramters_robot(socketFd, robotNum, conveyorID, param):返回值:int 结果码(0 成功,负数为错误码)。数据通过出参结构体原地填充——先创建 nrc.ConveyorIdentificationParams() 传入,调用成功后按字段读取(如 obj.field;结构体不支持 list())。
参数说明(与 C++ 一致):
| 参数 | 类型 | 说明 |
|---|---|---|
| socketFd | SOCKETFD | 连接句柄 |
| robotNum | int | 机器人编号 (1-4),仅 _robot 版本 |
| conveyorID | int | 传送带 ID |
| param | ConveyorIdentificationParams& | 输出参数,识别参数结构体 |
C++ 侧返回值描述:SUCCESS(0) 表示成功,负数表示失败。
conveyor_belt_get_sensor_paramters / conveyor_belt_get_sensor_paramters_robot
获取传感器参数。
conveyor_belt_get_sensor_paramters
def conveyor_belt_get_sensor_paramters(socketFd, conveyorID, param):返回值:int 结果码(0 成功,负数为错误码)。数据通过出参结构体原地填充——先创建 nrc.ConveyorSensorParams() 传入,调用成功后按字段读取(如 obj.field;结构体不支持 list())。
conveyor_belt_get_sensor_paramters_robot
def conveyor_belt_get_sensor_paramters_robot(socketFd, robotNum, conveyorID, param):返回值:int 结果码(0 成功,负数为错误码)。数据通过出参结构体原地填充——先创建 nrc.ConveyorSensorParams() 传入,调用成功后按字段读取(如 obj.field;结构体不支持 list())。
参数说明(与 C++ 一致):
| 参数 | 类型 | 说明 |
|---|---|---|
| socketFd | SOCKETFD | 连接句柄 |
| robotNum | int | 机器人编号 (1-4),仅 _robot 版本 |
| conveyorID | int | 传送带 ID |
| param | ConveyorSensorParams& | 输出参数,传感器参数结构体 |
C++ 侧返回值描述:SUCCESS(0) 表示成功,负数表示失败。
conveyor_belt_get_track_range_paramters / conveyor_belt_get_track_range_paramters_robot
获取跟踪范围参数。
conveyor_belt_get_track_range_paramters
def conveyor_belt_get_track_range_paramters(socketFd, conveyorID, param):返回值:int 结果码(0 成功,负数为错误码)。数据通过出参结构体原地填充——先创建 nrc.ConveyorTrackRangeParams() 传入,调用成功后按字段读取(如 obj.field;结构体不支持 list())。
conveyor_belt_get_track_range_paramters_robot
def conveyor_belt_get_track_range_paramters_robot(socketFd, robotNum, conveyorID, param):返回值:int 结果码(0 成功,负数为错误码)。数据通过出参结构体原地填充——先创建 nrc.ConveyorTrackRangeParams() 传入,调用成功后按字段读取(如 obj.field;结构体不支持 list())。
参数说明(与 C++ 一致):
| 参数 | 类型 | 说明 |
|---|---|---|
| socketFd | SOCKETFD | 连接句柄 |
| robotNum | int | 机器人编号 (1-4),仅 _robot 版本 |
| conveyorID | int | 传送带 ID |
| param | ConveyorTrackRangeParams& | 输出参数,跟踪范围结构体 |
C++ 侧返回值描述:SUCCESS(0) 表示成功,负数表示失败。
conveyor_belt_get_wait_point_paramters / conveyor_belt_get_wait_point_paramters_robot
获取等待点参数。
conveyor_belt_get_wait_point_paramters
def conveyor_belt_get_wait_point_paramters(socketFd, conveyorID, param):返回值:int 结果码(0 成功,负数为错误码)。数据通过出参结构体原地填充——先创建 nrc.ConveyorWaitPointParams() 传入,调用成功后按字段读取(如 obj.field;结构体不支持 list())。
conveyor_belt_get_wait_point_paramters_robot
def conveyor_belt_get_wait_point_paramters_robot(socketFd, robotNum, conveyorID, param):返回值:int 结果码(0 成功,负数为错误码)。数据通过出参结构体原地填充——先创建 nrc.ConveyorWaitPointParams() 传入,调用成功后按字段读取(如 obj.field;结构体不支持 list())。
参数说明(与 C++ 一致):
| 参数 | 类型 | 说明 |
|---|---|---|
| socketFd | SOCKETFD | 连接句柄 |
| robotNum | int | 机器人编号 (1-4),仅 _robot 版本 |
| conveyorID | int | 传送带 ID |
| param | ConveyorWaitPointParams& | 输出参数,等待点参数结构体 |
C++ 侧返回值描述:SUCCESS(0) 表示成功,负数表示失败。