示例¶
SDK 源码的 python/examples/ 下有一组可以直接运行的脚本。先跑通脚本,再照着写自己的程序。
以下命令在 SDK 源码目录下运行:使用数采环境时是数采仓库的 third_party/taccap-gripper,
单独安装时是 TacCap-Gripper。
所有脚本都用 left、right 或完整序列号指定夹爪,只接一只时可以省略。同一侧同时接着主从夹爪时用完整序列号。
脚本启动时会中断其他正在使用夹爪的程序,数采或控制运行时不要运行示例脚本。
脚本一览¶
| 脚本 | 用途 | 是否会动电机或改写夹爪 |
|---|---|---|
calibrate.py |
主夹爪行程标定 | 改写夹爪 |
leader_normalized_position.py |
读取主夹爪开度 | 只读 |
fisheye_cal.py |
查看 / 写入鱼眼内参 | show 只读,其余改写夹爪 |
read_intrinsics.py |
导出腕部相机内参 | 只读 |
wrist_camera.py |
腕部相机查看器 | 只读 |
ota_update.py |
夹爪固件升级 | 刷写固件 |
motor_ota_update.py |
电机固件升级 | 刷写固件 |
每个脚本都可以用 --help 查看参数。从夹爪的脚本(自检、键盘控制、阻抗与力位控制等)见 从夹爪 → 示例脚本。
从夹爪¶
见 从夹爪 → 示例脚本。
主夹爪¶
python python/examples/calibrate.py right
python python/examples/leader_normalized_position.py right
标定流程见 标定与自检。
腕部相机¶
python python/examples/wrist_camera.py --list # 列出相机及其序列号
python python/examples/wrist_camera.py <相机序列号> --undistort # 矫正后的画面
固件¶
从旧版本迁移¶
照 0.1.x / 0.2.x 写的程序,升级到 0.4.x 时主要有这些变化:
- 从夹爪改用控制器:
ImpedanceController或ForcePositionController,配置用for_spec()生成。 旧的ControlLoop、set_position()等接口已删除。 - 速度和力矩统一为正值 = 往闭合方向。
- 从夹爪固件需要 1.2.5 或以上,低于 1.2.11 时会提示升级。
- 示例脚本改用位置参数
left/right/ 序列号选择夹爪,旧的控制类示例脚本已删除。 - 夹爪对象给出的腕部相机画面默认改为 RGB。
从 0.3.x 升级到 0.4.x 时:
- 力位控制改为单一力矩受限控制律,夹住时更稳;
snapshot().holding比以前晚约 150ms 变为真, 依赖它的程序请复核。 - 闭合到 0 时,最终状态可能是
HOLDING_FORCE也可能是HOLDING_POSITION,两者都是正常的。 - 运行中
set_target(开度, 夹持力)的夹持力超过 1.1N·m 时直接报错,不再静默接受。 - 新增
g.motor.motor_version()读电机固件版本(夹爪固件 1.2.14 起不受电机通信模式限制)。
从 0.4.1 升级到 0.4.3 时(接口不变):
ForcePositionController跟随连续发送的目标时不再走走停停,代价是跟踪延迟多约 10–15ms。- 目标仍在移动时被挡住,进入
HOLDING_FORCE比以前晚约 150ms;依赖它判断夹住的程序请复核。 - 附带的从夹爪固件升到 1.2.16,请升级固件。
完整变更见 SDK 的 CHANGELOG。