Skip to content

4. 运动参数

API 列表

API函数描述是否需要save_config()保存
set_tcp_jerk()设置直线运动的加加速度
set_joint_jerk()设置关节运动的加加速度
set_collision_sensitivity()设置碰撞检测的灵敏度
set_tcp_load()设置TCP负载(重量和质心)
set_tcp_offset()设置TCP偏移
set_world_offset()设置用户自定义的世界座标系
save_config()保存以上配置使其永久生效-

速度与加速度

速度和加速度主要通过在运动指令中作为参数来设置。

参数运动指令中的参数名单位 (直线/关节)
速度speedmm/s 或 rad/s
加速度mvaccmm/s² 或 rad/s²

示例:

python
# 直线运动中指定速度为100 mm/s, 加速度为 2000 mm/s²
arm.set_position(x=300, y=0, z=200, speed=100, mvacc=2000, wait=True)

# 关节运动中指定关节速度为50 °/s, 关节加速度为 500 °/s²
arm.set_servo_angle(angle=[10, 0, 0, 0, 0, 0], speed=50, mvacc=500, wait=True, is_radian=False)

加加速度 (Jerk)

加加速度(Jerk)影响加速的快慢,也影响运动的平顺性,一般不建议修改。

运动类型接口单位
直线运动set_tcp_jerk(jerk)mm/s³
关节运动set_joint_jerk(jerk, is_radian)°/s³ 或 rad/s³

注意: 使用接口设置加加速度后,如果希望控制盒重启后依然生效,需要调用 arm.save_config() 保存配置。

示例:

python
# 设置TCP加加速度为10000 mm/s³
arm.set_tcp_jerk(10000)

# 设置关节加加速度为7000 °/s³
arm.set_joint_jerk(7000, is_radian=False)

# 保存配置使其永久生效
arm.save_config()

碰撞灵敏度

机械臂内置了基于电流的碰撞检测功能,可以设置其灵敏度。

使用 set_collision_sensitivity(sensitivity) 来设置。

  • sensitivity: 灵敏度值,范围 0-5。数值越高,越容易触发碰撞保护。0为关闭,出厂默认值是3。

注意: 使用接口设置碰撞灵敏度后,如果希望控制盒重启后依然生效,需要调用 arm.save_config() 保存配置。

示例: 设置碰撞检测灵敏度为3。

python
arm.set_collision_sensitivity(3)

TCP 负载与偏移

当机械臂末端安装了工具(如夹爪、焊枪等)时,需要设置工具的TCP负载(工具的重量和质心)和TCP偏移(工具座标系相对于末端法兰中心的偏移),以保证运动的精度和稳定性。

设置TCP负载

使用 set_tcp_load(weight, center_of_gravity) 来设置。

  • weight: 负载重量,单位 kg。
  • center_of_gravity: 负载质心相对于**工具中心点(TCP)**的坐标,一个 [x, y, z] 列表,单位mm。

示例: 设置负载为0.8kg,质心为[0, 0, 50]。

python
arm.set_tcp_load(0.8, [0, 0, 50])

注意: 设置TCP负载后,如果希望重启后依然生效,需要调用 arm.save_config() 保存配置。

设置TCP偏移

使用 set_tcp_offset(offset) 来设置。

  • offset: 一个包含 [x, y, z, roll, pitch, yaw] 的列表。

示例: 设置一个TCP,其位置在末端法兰中心沿Z轴偏移100mm。

python
arm.set_tcp_offset([0, 0, 100, 0, 0, 0])

注意:

  • 设置TCP偏移后,机械臂会进入状态5(state=5),无法接受和执行新的指令,需要调用 set_state(0) 来恢复。
  • 如果希望重启后依然生效,需要调用 arm.save_config() 保存配置。

座标系

通过 set_world_offset(offset, is_radian=None) 可以设置一个用户自定义的座标系(世界座标系)。设置后,运动会基于这个新的世界座标系。

  • offset: [x, y, z, roll, pitch, yaw] 列表,定义了基座标在世界座标系的偏移。
  • is_radian: 用来指定 roll, pitch, yaw 的单位是度还是弧度。

示例:

python
# 设置新的世界座标系,让机械臂基座标系位于世界座标系的[200, 0, 0, 0, 0, 0]
arm.set_world_offset([200, 0, 0, 0, 0, 0])

注意:

  • 设置座标系后,机械臂会进入状态5(state=5),无法接受和执行新的指令,需要调用 set_state(0) 来恢复。
  • 如果希望重启后依然生效,需要调用 arm.save_config() 保存配置。