夹爪
夹爪指令需要在机器人法兰盘上安装原装的夹爪,该夹爪支持力控和位控。
注意
当机器人首次启动或重新上电时,夹爪将会自动张合一次以确认行程。请在启动机器人之前确认夹爪周围是否有障碍物遮挡。
初始化夹爪
lebai.init_claw(must)
初始化夹爪,夹爪张合一次以确认行程。需要新版本夹爪硬件支持。
| 参数 | 类型 | 说明 | |-------|-------|-------| | must | bool | 是否强制执行初始化。可选,默认False不强制初始化设置夹爪, 监测到夹爪初始化过就不初始化,如果没有则重新初始化一次|
注意
手臂急停后重新上电,夹爪将会自动张合一次以确认行程。如果夹爪周围有障碍物导致行程确认失真,可以在合适位置强制初始化一次。
- 使用示例:
import lebai_sdk
lebai_sdk.init()
import nest_asyncio
nest_asyncio.apply()
robot_ip = "192.168.4.118"
lebai = lebai_sdk.connect(robot_ip, False)
lebai.init_claw(True) #强制初始化
夹爪控制
lebai.set_claw(force, amplitude)
设置夹爪力度(力控)和幅度(位控)。
如果在闭合过程中,还未到达设置幅度,但是抓取到物体,夹爪力控达到设置的力的大小,则不再继续闭合以避免夹坏物体。
| 参数 | 类型 | 说明 | |-------|-------|-------| | force | int | 力度(0-100)。可选,默认不更改 | | amplitude | int | 张合幅度(0-100)。可选,默认不更改 |
- 使用示例:
import lebai_sdk
lebai_sdk.init()
import nest_asyncio
nest_asyncio.apply()
robot_ip = "192.168.4.118"
lebai = lebai_sdk.connect(robot_ip, False)
lebai.set_claw(100, 30) #100代表力度最大,30代表最大开合度的30%
获取夹爪状态
claw_status = lebai.get_claw()
返回值:dict类型。返回当前夹爪力度(力控)和幅度(位控)。
参数 类型 说明 force int 夹爪力度 amplitude int 夹爪张合幅度 使用示例:
import lebai_sdk
lebai_sdk.init()
import nest_asyncio
nest_asyncio.apply()
robot_ip = "192.168.4.118"
lebai = lebai_sdk.connect(robot_ip, False)
claw_status = lebai.get_claw()
print(claw_status)
#输出:{'force': 100.0, 'amplitude': 31.0, 'weight': 0.0, 'hold_on': False}, weight参数没有任何作用 hold_on代表夹爪是否已经稳定,是否在开合过程中