夹爪

夹爪指令需要在机器人法兰盘上安装原装的夹爪,该夹爪支持力控和位控。

注意

当机器人首次启动或重新上电时,夹爪将会自动张合一次以确认行程。请在启动机器人之前确认夹爪周围是否有障碍物遮挡。

初始化夹爪

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类型。返回当前夹爪力度(力控)和幅度(位控)。

    参数类型说明
    forceint夹爪力度
    amplitudeint夹爪张合幅度
  • 使用示例:

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代表夹爪是否已经稳定,是否在开合过程中