Skip to content

全局路点管理globalWaypointManage

可用于新增、查询或者更新全局路点。

新增全局路点rm_add_global_waypoint()

  • 方法原型:
C
int rm_add_global_waypoint(rm_robot_handle * handle,rm_waypoint_t waypoint)

可以跳转rm_robot_handlerm_waypoint_t查阅结构体详细描述

  • 参数说明:
参数类型说明
handle输入参数机械臂句柄。
waypoint输入参数新增全局路点参数(无需输入新增全局路点时间)。
  • 返回值:
参数类型说明
0int成功。
1int控制器返回false,传递参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器超时没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。
  • 使用示例
C
// 新增全局路点p3
rm_waypoint_t waypoint;
strcpy(waypoint.point_name,"p3");
waypoint.joint[0] = 20;
waypoint.joint[1] = 30;
// 剩余关节角度均为 0
for (int i = 2; i < 6; ++i) {
    waypoint.joint[i] = 0.0;
}
// 设置位置姿态
waypoint.pose.position.x = 0.01;
waypoint.pose.position.y = 0.02;
waypoint.pose.position.z = 0.03;
waypoint.pose.euler.rx = 0.1;
waypoint.pose.euler.ry = 0.2;
waypoint.pose.euler.rz = 0.3;
strcpy(waypoint.work_frame, "World");
strcpy(waypoint.tool_frame, "Arm_Tip");
ret = rm_add_global_waypoint(robot_handle, waypoint);

更新全局路点rm_update_global_waypoint()

  • 方法原型:
C
int rm_update_global_waypoint(rm_robot_handle * handle,rm_waypoint_t waypoint)

可以跳转rm_robot_handlerm_waypoint_t查阅结构体详细描述

  • 参数说明:
参数类型说明
handle输入参数机械臂句柄。
waypoint输入参数更新全局路点参数(无需输入更新全局路点时间)。
  • 返回值:
参数类型说明
0int成功。
1int控制器返回false,传递参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器超时没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。
  • 使用示例
C
// 更新全局路点p3
rm_waypoint_t waypoint;
strcpy(waypoint.point_name,"p3");
waypoint.joint[0] = 20;
waypoint.joint[1] = 30;
// 剩余关节角度均为 0
for (int i = 2; i < 6; ++i) {
    waypoint.joint[i] = 0.0;
}
// 设置位置姿态
waypoint.pose.position.x = 0.01;
waypoint.pose.position.y = 0.02;
waypoint.pose.position.z = 0.03;
waypoint.pose.euler.rx = 0.1;
waypoint.pose.euler.ry = 0.2;
waypoint.pose.euler.rz = 0.3;
strcpy(waypoint.work_frame, "World");
strcpy(waypoint.tool_frame, "Arm_Tip");
ret = rm_update_global_waypoint(robot_handle, waypoint);

删除全局路点rm_delete_global_waypoint()

  • 方法原型:
C
int rm_delete_global_waypoint(rm_robot_handle * handle,const char * point_name)

可以跳转rm_robot_handlerm_waypoint_t查阅结构体详细描述

  • 参数说明:
参数类型说明
handle输入参数机械臂句柄。
point_name输入参数全局路点名称。
  • 返回值:
参数类型说明
0int成功。
1int控制器返回false,传递参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器超时没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。
  • 使用示例
C
// 删除全局路点p3
rm_delete_global_waypoint(robot_handle, "p3");

查询指定全局路点rm_get_given_global_waypoint()

  • 方法原型:
C
int rm_get_given_global_waypoint(rm_robot_handle * handle,const char * name,rm_waypoint_t * point)

可以跳转rm_robot_handlerm_waypoint_t查阅结构体详细描述

  • 参数说明:
参数类型说明
handle输入参数机械臂句柄。
name输入参数指定全局路点名称。
point输出参数返回指定的全局路点参数。
  • 返回值:
参数类型说明
0int成功。
1int控制器返回false,传递参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器超时没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。
  • 使用示例
C
// 获取全局路点p3参数
rm_waypoint_t point;
ret = rm_get_given_global_waypoint(robot_handle, "p3", &point);

查询多个全局路点rm_get_global_waypoints_list()

  • 方法原型:
C
int rm_get_global_waypoints_list(rm_robot_handle * handle,int page_num,int page_size,const char * vague_search,rm_waypoint_list_t * point_list)

可以跳转rm_robot_handlerm_waypoint_t查阅结构体详细描述

  • 参数说明:
参数类型说明
handle输入参数机械臂句柄。
page_num输入参数页码。
page_size输入参数每页大小。
vague_search输入参数模糊搜索的关键词。
point_list输出参数返回的全局路点列表。
  • 返回值:
参数类型说明
0int成功。
1int控制器返回false,传递参数错误或机械臂状态发生错误。
-1int数据发送失败,通信过程中出现问题。
-2int数据接收失败,通信过程中出现问题或者控制器超时没有返回。
-3int返回值解析失败,接收到的数据格式不正确或不完整。
  • 使用示例
C
// 查询第一页10个全局路点信息
rm_waypoint_list_t point_list;
int page_num = 1;
int page_size = 10;
const char *vague_search;
ret = rm_get_global_waypoints_list(robot_handle,page_num,page_size,vague_search,&point_list);
printf("get global waypoints list result : %d\n", ret);