VITAI Gripper 90 Python SDK 使用说明
本文档说明如何使 用 vitai_gripper_90.py 通过 Modbus RTU 控制 VITAI-Gripper90 夹爪。
1. 功能概览
SDK 提供 MotorController 类,用于完成以下操作:
- 建立串口 Modbus RTU 通信
- 设置目标位置、速度、力/力矩、加速度、减速度
- 触发夹爪运动
- 读取实时位置、实时速度、实时电流
- 启动后台线程持续打印实时反馈数据
2. 环境要求
- Python 3.8 或更高版本
- USB 转 RS485 或其他可用的 Modbus RTU 串口设备
- 已确认夹爪供电、通信线连接和从机地址配置正确
安装依赖:
pip install minimalmodbus pyserial
Linux 系统如果没有串口访问权限,可将当前用户加入 dialout 组后重新登录:
sudo usermod -aG dialout $USER
3. 通信参数
SDK 默认串口参数如下:
| 参数 | 默认值 |
|---|---|
| 协议 | Modbus RTU |
| 从机地址 | 1 |
| 波特率 | 115200 |
| 数据位 | 8 |
| 校验位 | None |
| 停止位 | 1 |
| 超时时间 | 1.0 s |
常见串口名称:
| 系统 | 示例 |
|---|---|
| Windows | COM3 |
| Linux | /dev/ttyUSB0 |
| macOS | /dev/tty.usbserial-xxxx |
4. 快速开始
创建一个 Python 文件,例如 example_move.py:
import time
from vitai_gripper_90 import MotorController
PORT = "/dev/ttyUSB0" # Windows 示例: "COM3"
SLAVE_ID = 1
gripper = MotorController(
port=PORT,
slave_id=SLAVE_ID,
baudrate=115200,
timeout=1.0,
)
try:
# 移动到位置 0
gripper.temp_move(
position_mm=0,
speed_pct=100,
force_pct=50,
accel=1000,
decel=1000,
trigger=True,
)
time.sleep(3)
# 移动到位置 900
gripper.temp_move(
position_mm=900,
speed_pct=100,
force_pct=50,
accel=1000,
decel=1000,
trigger=True,
)
time.sleep(3)
finally:
gripper.stop_monitoring()
运行:
python example_move.py
也可以直接运行 SDK 文件中的示例:
python vitai_gripper_90.py
运行前请根据实际设备修改 vitai_gripper_90.py 底部示例中的 PORT 和 SLAVE_ID。
5. API 说明
初始化
sdk = MotorController(port, slave_id=1, baudrate=115200, timeout=1.0)
| 参数 | 类型 | 说明 |
|---|---|---|
port | str | 串口端口,例如 /dev/ttyUSB0 或 COM3 |
slave_id | int | Modbus 从机地址,默认 1 |
baudrate | int | 串口波特率,默认 115200 |
timeout | float | 通信超时时间,单位秒,默认 1.0 |