|
| | MotionControl () |
| virtual | ~MotionControl () |
| double | getEqradius () |
| | 获取等效半径,单位 m moveLine/moveCircle时,末端姿态旋转的角度等效到末端位置移动 可以通过 setEqradius 设置,默认为1
|
| int | setEqradius (double eqradius) |
| | 设置等效半径,单位 m moveLine/moveCircle时,末端姿态旋转的角度等效到末端位置移动,数值越大,姿态旋转速度越快
|
| int | setSpeedFraction (double fraction) |
| | 动态调整机器人运行速度和加速度比例 (0., 1.
|
| double | getSpeedFraction () |
| | 获取速度和加速度比例,默认为 1 可以通过 setSpeedFraction 接口设置
|
| int | speedFractionCritical (bool enable) |
| | 速度比例设置临界区,使能之后速度比例被强制设定为1.
|
| bool | isSpeedFractionCritical () |
| | 是否处于速度比例设置临界区
|
| bool | isBlending () |
| | 是否处交融区
|
| int | pathOffsetLimits (double v, double a) |
| | 设置偏移的最大速度和最大加速度 仅对pathOffsetSet中 type=1 有效
|
| int | pathOffsetCoordinate (int ref_coord) |
| | 设置偏移的参考坐标系 仅对pathOffsetSet中 type=1 有效
|
| int | pathOffsetEnable () |
| | 路径偏移使能
|
| int | pathOffsetSet (const std::vector< double > &offset, int type=0) |
| | 设置路径偏移
|
| int | pathOffsetDisable () |
| | 路径偏移失能
|
| int | pathOffsetSupv (const std::vector< double > &min, const std::vector< double > &max, int strategy) |
| int | jointOffsetEnable () |
| | 关节偏移使能
|
| int | jointOffsetSet (const std::vector< double > &offset, int type=1) |
| | 设置关节偏移
|
| int | jointOffsetDisable () |
| | 关节偏移失能
|
| int | getQueueSize () |
| | 获取已经入队的指令段(INST)数量,运动指令包括 moveJoint/moveLine/moveCircle 等运动指令以及 setPayload 等配置指令
|
| int | getTrajectoryQueueSize () |
| | 获取已经入队的运动规划插补点数量
|
| int | getExecId () |
| | 获取当前正在插补的运动指令段的ID
|
| double | getDuration (int id) |
| | 获取指定ID的运动指令段的预期执行时间
|
| double | getMotionLeftTime (int id) |
| | 获取指定ID的运动指令段的剩余执行时间
|
| int | stopMove (bool quick, bool all_tasks) |
| | StopMove 用于临时停止机器人和外部轴的运动以及相关工艺进程。如果调用 StartMove 指令,则运动和工艺进程将恢复。
|
| int | startMove () |
| | StartMove 用于在以下情况下恢复机器人、外部轴的运动以及相关工艺进程: • 通过 StopMove 指令停止后。 • 执行 StorePath ... RestoPath 序列后。 • 发生异步运动错误(如 ERR_PATH_STOP)或特定工艺错误并在 ERROR 处理器中处理后。
|
| int | storePath (bool keep_sync) |
| | storePath
|
| int | clearPath () |
| | ClearPath (清除路径) 清除当前运动路径层级(基础层级或 StorePath 层级)上的所有运动路径。
|
| int | restoPath () |
| | restoPath
|
| double | getProgress () |
| | 获取当前运动指令段的执行进度
|
| int | setWorkObjectHold (const std::string &module_name, const std::vector< double > &mounting_pose) |
| | 当工件安装在另外一台机器人的末端或者外部轴上时,指定其名字和安装位置
|
| std::tuple< std::string, std::vector< double > > | getWorkObjectHold () |
| | 获取工件安装信息
|
| std::vector< double > | getPauseJointPositions () |
| int | setResumeStartPoint (const std::vector< double > &q, int move_type, double blend_radius, const std::vector< double > &qdmax, const std::vector< double > &qddmax, const std::vector< double > &vmax, const std::vector< double > &amax) |
| | 设置继续运动参数
|
| int | getResumeMode () |
| | 获取继续运动模式
|
| ARCS_DEPRECATED int | setServoMode (bool enable) |
| | 设置伺服模式 使用 setServoModeSelect 替代
|
| ARCS_DEPRECATED bool | isServoModeEnabled () |
| | 判断伺服模式是否使能 使用 getServoModeSelect 替代
|
| int | setServoModeSelect (int mode) |
| | 设置伺服运动模式
|
| int | getServoModeSelect () |
| | 获取伺服运动模式
|
| int | servoJoint (const std::vector< double > &q, double a, double v, double t, double lookahead_time, double gain) |
| | 关节空间伺服
|
| int | servoCartesian (const std::vector< double > &pose, double a, double v, double t, double lookahead_time, double gain) |
| | 笛卡尔空间伺服
|
| int | servoJointWithAxes (const std::vector< double > &q, const std::vector< double > &extq, double a, double v, double t, double lookahead_time, double gain) |
| | 伺服运动(带外部轴),用于执行离线轨迹、透传用户规划轨迹等
|
| int | servoJointWithAxisGroup (const std::vector< double > &q, double a, double v, double t, double lookahead_time, double gain, const std::string &group_name, const std::vector< double > &extq) |
| int | servoCartesianWithAxes (const std::vector< double > &pose, const std::vector< double > &extq, double a, double v, double t, double lookahead_time, double gain) |
| | 伺服运动(带外部轴),用于执行离线轨迹、透传用户规划轨迹等 与 servoJointWithAxes 区别在于接收笛卡尔空间位姿而不是关节角度 (由软件内部直接做逆解)
|
| int | servoCartesianWithAxisGroup (const std::vector< double > &pose, double a, double v, double t, double lookahead_time, double gain, const std::string &group_name, const std::vector< double > &extq) |
| int | trackJoint (const std::vector< double > &q, double t, double smooth_scale, double delay_sacle) |
| | 跟踪运动,用于执行离线轨迹、透传用户规划轨迹等
|
| int | trackCartesian (const std::vector< double > &pose, double t, double smooth_scale, double delay_sacle) |
| | 跟踪运动,用于执行离线轨迹、透传用户规划轨迹等 与 trackJoint 区别在于接收笛卡尔空间位姿而不是关节角度 (由软件内部直接做逆解)
|
| int | followJoint (const std::vector< double > &q) |
| | 关节空间跟随
|
| int | followLine (const std::vector< double > &pose) |
| | 笛卡尔空间跟随
|
| int | speedJoint (const std::vector< double > &qd, double a, double t) |
| | 关节空间速度跟随
|
| int | resumeSpeedJoint (const std::vector< double > &qd, double a, double t) |
| | 关节空间速度跟随(机械臂运行工程时发生碰撞,通过此接口移动到安全位置)
|
| int | speedLine (const std::vector< double > &xd, double a, double t) |
| | 笛卡尔空间速度跟随
|
| int | resumeSpeedLine (const std::vector< double > &xd, double a, double t) |
| | 笛卡尔空间速度跟随(机械臂运行工程时发生碰撞,通过此接口移动到安全位置)
|
| int | moveSpline (const std::vector< double > &q, double a, double v, double duration) |
| | 在关节空间做样条插值
|
| int | moveJoint (const std::vector< double > &q, double a, double v, double blend_radius, double duration) |
| | 添加关节运动
|
| int | moveJointWithAxisGroup (const std::vector< double > &q, double a, double v, double blend_radius, double duration, const std::string &group_name, const std::vector< double > &extq) |
| | 机器人与外部轴同步运动
|
| int | resumeMoveJoint (const std::vector< double > &q, double a, double v, double duration) |
| | 通过关节运动移动到暂停点的位置
|
| int | moveLine (const std::vector< double > &pose, double a, double v, double blend_radius, double duration) |
| | 添加直线运动
|
| int | moveLineWithAxisGroup (const std::vector< double > &pose, double a, double v, double blend_radius, double duration, const std::string &group_name, const std::vector< double > &extq) |
| | 直线运动与外部轴同步运动
|
| int | moveProcess (const std::vector< double > &pose, double a, double v, double blend_radius) |
| | 添加工艺运动
|
| int | resumeMoveLine (const std::vector< double > &pose, double a, double v, double duration) |
| | 通过直线运动移动到暂停点的位置
|
| int | moveCircle (const std::vector< double > &via_pose, const std::vector< double > &end_pose, double a, double v, double blend_radius, double duration) |
| | 添加圆弧运动
|
| int | moveCircleWithAxisGroup (const std::vector< double > &via_pose, const std::vector< double > &end_pose, double a, double v, double blend_radius, double duration, const std::string &group_name, const std::vector< double > &extq) |
| | moveCircle 与外部轴同步运动
|
| int | setCirclePathMode (int mode) |
| | 设置圆弧路径模式
|
| int | moveCircle2 (const CircleParameters ¶m) |
| | 高级圆弧或者圆周运动
|
| int | pathBufferAlloc (const std::string &name, int type, int size) |
| | 新建一个路径点缓存
|
| int | pathBufferAppend (const std::string &name, const std::vector< std::vector< double > > &waypoints) |
| | 向路径缓存添加路点
|
| int | pathBufferEval (const std::string &name, const std::vector< double > &a, const std::vector< double > &v, double t) |
| | 计算、优化等耗时操作,传入的参数相同时不会重新计算
|
| bool | pathBufferValid (const std::string &name) |
| | 指定名字的buffer是否有效
|
| int | pathBufferFree (const std::string &name) |
| | 释放路径缓存
|
| int | pathBufferFilter (const std::string &name, int order, double fd, double fs) |
| | 关节空间路径滤波器
|
| std::vector< std::string > | pathBufferList () |
| | 列出所有缓存路径的名字
|
| int | movePathBuffer (const std::string &name) |
| | 执行缓存的路径
|
| int | moveIntersection (const std::vector< std::vector< double > > &poses, double a, double v, double main_pipe_radius, double sub_pipe_radius, double normal_distance, double normal_alpha) |
| | 相贯线接口
|
| int | stopJoint (double acc) |
| | 关节空间停止运动
|
| int | resumeStopJoint (double acc) |
| | 关节空间停止运动(机械臂运行工程时发生碰撞,通过resumeSpeedJoint接口移动到安全位置后需要停止时调用此接口)
|
| int | stopLine (double acc, double acc_rot) |
| | 停止 moveLine/moveCircle 等在笛卡尔空间的运动
|
| int | resumeStopLine (double acc, double acc_rot) |
| | 笛卡尔空间停止运动(机械臂运行工程时发生碰撞,通过resumeSpeedLine接口移动到安全位置后需要停止时调用此接口)
|
| int | weaveStart (const std::string ¶ms) |
| int | weaveEnd () |
| | 结束摆动
|
| int | setFuturePointSamplePeriod (double sample_time) |
| | 设置未来路径上点的采样时间间隔
|
| std::vector< std::vector< double > > | getFuturePathPointsJoint () |
| | 获取未来路径上的轨迹点
|
| int | setConveyorTrackEncoder (int encoder_id, int tick_per_meter) |
| | 设置传送带编码器参数
|
| int | conveyorTrackCircle (int encoder_id, const std::vector< double > ¢er, bool rotate_tool) |
| | 圆形传送带跟随
|
| int | conveyorTrackLine (int encoder_id, const std::vector< double > &direction) |
| | 线性传送带跟随
|
| int | conveyorTrackStop (int encoder_id, double a) |
| | 终止传送带跟随
|
| bool | conveyorTrackSwitch (int encoder_id) |
| | 切换传送带追踪物品 如果当前物品正在处于跟踪状态,则将该物品出队,不再跟踪,返回true 如果没有物品正在处于跟踪状态,返回false
|
| bool | hasItemOnConveyorToTrack (int encoder_id) |
| | 传送带上是否有物品可以跟踪
|
| int | conveyorTrackCreatItem (int encoder_id, int item_id, const std::vector< double > &offset) |
| | 增加传送带队列
|
| int | setConveyorTrackCompensate (int encoder_id, double comp) |
| | 设置传送带跟踪的补偿值
|
| bool | isConveyorTrackSync (int encoder_id) |
| | 判断传送带与机械臂之间是否达到相对静止
|
| int | setConveyorTrackLimit (int encoder_id, double limit) |
| | 设置传送带跟踪的最大距离限制
|
| int | setConveyorTrackStartWindow (int encoder_id, double window_min, double window_max) |
| | 设置传送带跟踪的启动窗口
|
| int | setConveyorTrackSensorOffset (int encoder_id, double offset) |
| | 设置传送带示教位置到同步开关之间的距离
|
| int | setConveyorTrackSyncSeparation (int encoder_id, double distance, double time) |
| | 设置传送带同步分离,用于过滤掉同步开关中不需要的信号
|
| bool | isConveyorTrackExceed (int encoder_id) |
| | 传送带上工件的移动距离是否超过最大限值
|
| int | conveyorTrackClearItems (int encoder_id) |
| | 清空传动带队列中的所有对象
|
| std::vector< int > | getConveyorTrackQueue (int encoder_id) |
| | 获取传送带队列的编码器值
|
| int | getConveyorTrackNextItem (int encoder_id) |
| | 获取下一个跟踪的传送带物品的id
|
| int | moveSpiral (const SpiralParameters ¶m, double blend_radius, double v, double a, double t) |
| | 螺旋线运动
|
| int | getLookAheadSize () |
| | 获取前瞻段数
|
| int | setLookAheadSize (int size) |
| | 设置前瞻段数 1.
|
| int | weaveUpdateParameters (const std::string ¶ms) |
| | 更新摆动过程中的频率和振幅
|
| int | enableJointSoftServo (const std::vector< double > &stiffness) |
| | 设置关节电流环刚度系数
|
| int | disableJointSoftServo () |
| | 关闭关节电流环刚度系数
|
| bool | isJointSoftServoEnabled () |
| | 判断关节电流环刚度系数是否使能
|
| int | enableVibrationSuppress (const std::vector< double > &omega, const std::vector< double > &zeta, int level) |
| | 打开振动抑制
|
| int | disbaleVibrationSuppress () |
| | 关闭振动抑制
|
| int | setTimeOptimalEnable (bool enable) |
| | 设置时间最优算法 默认关闭
|
| bool | isTimeOptimalEnabled () |
| | 获取时间最优算法状态: true - 开启 false - 关闭
|
| bool | isSupportedTimeOptimal () |
| | 获取是否支持时间最优算法: true - 支持 false - 不支持
|
| int | setTcpMaxLinearVelocity (double v) |
| | 设置TCP最大线速度
|
| double | getTcpMaxLinearVelocity () |
| | 获取TCP最大线速度
|
| int | resetTcpMaxLinearVelocity () |
| | 重置 TCP 最大线速度
|
| int | setEndPath () |
| | 设置轨迹终止点(以当前轨迹段为界)
|