Skip to content

机械臂运动状态控制ArmMotionControl

可用于机械臂运动的急停、暂停、继续等控制。下面是机械臂运动的急停、暂停、继续等控制ArmMotionControl的详细成员函数说明,包含了方法原型、参数说明、返回值说明和使用示例。

轨迹缓停rm_set_arm_slow_stop()

在当前正在运行的轨迹上停止。

  • 方法原型:
python
rm_set_arm_slow_stop(self) -> int:
  • 返回值: 函数执行的状态码:
参数类型说明
0int成功。
1int控制器返回false,参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器长久没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。
  • 使用示例
python
from Robotic_Arm.rm_robot_interface import *

# 实例化RoboticArm类
arm = RoboticArm(rm_thread_mode_e.RM_TRIPLE_MODE_E)

# 创建机械臂连接,打印连接id
handle = arm.rm_create_robot_arm("192.168.1.18", 8080)
print(handle.id)

print(arm.rm_set_arm_slow_stop())

arm.rm_delete_robot_arm()

轨迹急停rm_set_arm_stop()

关节最快速度停止,轨迹不可恢复。

  • 方法原型:
python
rm_set_arm_stop(self) -> int:
  • 返回值: 函数执行的状态码:
参数类型说明
0int成功
1int控制器返回false,参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器长久没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。
  • 使用示例
python
from Robotic_Arm.rm_robot_interface import *

# 实例化RoboticArm类
arm = RoboticArm(rm_thread_mode_e.RM_TRIPLE_MODE_E)

# 创建机械臂连接,打印连接id
handle = arm.rm_create_robot_arm("192.168.1.18", 8080)
print(handle.id)

print(arm.rm_set_arm_stop())

arm.rm_delete_robot_arm()

轨迹暂停rm_set_arm_pause()

暂停在规划轨迹上,轨迹可恢复。

  • 方法原型:
python
rm_set_arm_pause(self) -> int:
  • 返回值: 函数执行的状态码:
参数类型说明
0int成功
1int控制器返回false,参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器长久没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。
  • 使用示例
python
from Robotic_Arm.rm_robot_interface import *

# 实例化RoboticArm类
arm = RoboticArm(rm_thread_mode_e.RM_TRIPLE_MODE_E)

# 创建机械臂连接,打印连接id
handle = arm.rm_create_robot_arm("192.168.1.18", 8080)
print(handle.id)

print(arm.rm_set_arm_pause())

arm.rm_delete_robot_arm()

继续当前轨迹运动rm_set_arm_continue()

轨迹暂停后,继续当前轨迹运动。

  • 方法原型:
python
rm_set_arm_continue(self) -> int:
  • 返回值: 函数执行的状态码:
参数类型说明
0int成功
1int控制器返回false,参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器长久没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。
  • 使用示例
python
from Robotic_Arm.rm_robot_interface import *

# 实例化RoboticArm类
arm = RoboticArm(rm_thread_mode_e.RM_TRIPLE_MODE_E)

# 创建机械臂连接,打印连接id
handle = arm.rm_create_robot_arm("192.168.1.18", 8080)
print(handle.id)

print(arm.rm_set_arm_continue())

arm.rm_delete_robot_arm()

清除当前轨迹rm_set_delete_current_trajectory()

  • 方法原型:
python
rm_set_delete_current_trajectory(self) -> int:
  • 返回值: 函数执行的状态码:
参数类型说明
0int成功
1int控制器返回false,参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器长久没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。
  • 使用示例
python
from Robotic_Arm.rm_robot_interface import *

# 实例化RoboticArm类
arm = RoboticArm(rm_thread_mode_e.RM_TRIPLE_MODE_E)

# 创建机械臂连接,打印连接id
handle = arm.rm_create_robot_arm("192.168.1.18", 8080)
print(handle.id)

print(arm.rm_set_delete_current_trajectory())

arm.rm_delete_robot_arm()

清除所有轨迹rm_set_arm_delete_trajectory()

  • 方法原型:
python
rm_set_arm_delete_trajectory(self) -> int:
  • 返回值: 函数执行的状态码:
参数类型说明
0int成功
1int控制器返回false,参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器长久没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。
  • 使用示例
python
from Robotic_Arm.rm_robot_interface import *

# 实例化RoboticArm类
arm = RoboticArm(rm_thread_mode_e.RM_TRIPLE_MODE_E)

# 创建机械臂连接,打印连接id
handle = arm.rm_create_robot_arm("192.168.1.18", 8080)
print(handle.id)

print(arm.rm_set_arm_delete_trajectory())

arm.rm_delete_robot_arm()

获取当前正在规划的轨迹信息rm_get_arm_current_trajectory()

  • 方法原型:
python
rm_get_arm_current_trajectory(self) -> dict[str, any]:
  • 返回值:dict[str,any]: 包含以下键值的字典。
  1. return_code(int): 函数执行的状态码
参数类型说明
0int成功
1int控制器返回false,参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器长久没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。
  1. 返回的规划类型
参数类型说明
trajectory_typerm_arm_current_trajectory_e返回的规划类型
  1. 规划和关节空间规划为当前关节1~7角度数组;笛卡尔空间规划则为当前末端位姿。
参数类型说明
datalist[float]无规划和关节空间规划为当前关节1~7角度数组;笛卡尔空间规划则为当前末端位姿
  • 使用示例
python
from Robotic_Arm.rm_robot_interface import *

# 实例化RoboticArm类
arm = RoboticArm(rm_thread_mode_e.RM_TRIPLE_MODE_E)

# 创建机械臂连接,打印连接id
handle = arm.rm_create_robot_arm("192.168.1.18", 8080)
print(handle.id)

print(arm.rm_get_arm_current_trajectory())

arm.rm_delete_robot_arm()