- 选型指南
- 概述
- 入门指南
- 机械臂参数
- 示教器使用
-
二次开发
-
API(C++)
- 快速开始
- 接口说明
- 7000端口接口说明
- 使用示例
- 返回值说明
-
API(Python)
- 快速开始
- 接口说明
- 7000端口接口说明
- 使用示例
- 返回值说明
- ROS2开发
-
API(C++)
- 相关下载
实时运动控制接口
1. robot_movej - 关节空间运动到目标位姿
方法: move_joint(socket_fd: int, move_cmd: MoveCmd)
功能描述: 通过裸数据直接下发控制指令,驱动机械臂所有关节实时、同步运动至指定的目标角度(在线点对点控制)。
参数:
socket_fd:已连接的机械臂控制器句柄,整型格式(int)。move_cmd(底层输出参数):运动控制属性结构体容器(对应代码中的 nrc.MoveCmd())。由方法内部自动创建并配置以下核心数组成员,无需外部手工创建:targetPosValue:实时关节角度向量。内部通过 resize(7) 强制扩容至 7 位空间(前 6 轴对应本体关节,第 7 轴预留作为外部扩展轴补零),以匹配底层通信帧结构。coord:坐标系选择类型,固定赋值为 0(代表关节空间模式)。velocity:实时运动速度百分比(1 ~ 100),整型(int),默认 20。acc / dec:运动加减速因子,整型(int),默认 50。pl:轨迹过渡平滑度等级,整型(int),默认 0。
返回值:
bool:执行结果布尔值True:指令下发成功。底层接口返回 0,控制器成功接收并将数据写入伺服驱动层。False:指令下发失败。句柄无效、轴数据超出物理软限位、控制器未正常上电或使能、底层接口返回非 0 错误码或触发通信异常。
使用示例:
2. robot_movel - 笛卡尔空间直线运动到目标位姿
方法: move_linear(socket_fd: int, move_cmd: MoveCmd)
功能描述: 通过裸数据直接下发控制指令,驱动机械臂末端工具中心点(TCP)在笛卡尔空间内,严格沿直线轨迹实时运动至指定的目标直角坐标点。
参数:
socket_fd:已连接的机械臂控制器句柄,整型格式(int)。move_cmd(底层输出参数):运动控制属性结构体容器(对应代码中的 nrc.MoveCmd())。由方法内部自动创建并配置以下核心数组成员,无需外部手工创建:targetPosValue:实时空间直角坐标向量。内部通过 resize(7) 强制扩容至 7 位空间(前 6 位对应直角坐标的 [X, Y, Z, Rx, Ry, Rz],第 7 位预留作为外部扩展轴并自动补零),以匹配底层实时通信帧结构。coord:坐标系选择类型,固定赋值为 0(代表官方示例指定的基坐标系模式)。velocity / velocitySync:实时直线运动速度与双保险同步控速参数,整型(int),默认 20。acc / dec:运动加减速因子,整型(int),默认 50。pl:轨迹过渡平滑度等级,整型(int),默认 0。
返回值:
bool:执行结果布尔值True:指令下发成功。底层接口返回 0,控制器成功接收并将空间直线插补轨迹数据下发至伺服层。False:指令下发失败。句柄无效、坐标超出物理工作空间(奇异点或不可达)、控制器未正常上电、底层接口返回非 0 错误码或触发通信异常。
使用示例:
