机器人--move_type/移动类型

从运动空间分类

1. 关节空间运动

定义:控制每个关节独立运动,直接指定关节角度或位移。

  • 常见类型:

    • 点到点运动 :只关注起点和终点的关节角度,不控制中间路径。

    • 关节插补运动:多个关节按比例同步运动,使所有关节同时到达目标。

  • 特点:

    • 路径不可预测:末端执行器在空间中的轨迹通常为复杂曲线。

    • 效率高:计算量小,运动速度快。

    • 无碰撞控制:中间路径可能发生意外碰撞。

2. 笛卡尔空间运动

定义 :在直角坐标系中规划末端执行器的运动路径。

  • 常见类型:

    • 直线运动:末端沿空间直线移动。

    • 圆弧运动:末端沿圆弧路径移动。

    • 样条曲线运动:沿平滑复杂曲线运动。

  • 特点:

    • 路径精确可控:末端轨迹可预测,适合精细操作。

    • 计算复杂:需实时进行逆运动学解算。

    • 应用广泛:焊接、涂胶、装配等需要精确轨迹的场景。

核心区别对比表

特性 关节空间运动 笛卡尔空间运动
控制对象 关节角度/位移 末端位姿(位置+姿态)
路径预测性 不可预测(末端轨迹任意) 完全可控(直线/圆弧等)
计算复杂度 低(无需实时逆解) 高(需连续逆运动学解算)
适用场景 快速点到点搬运、避障优化 轨迹加工、精密装配
奇异点问题 无 需处理(逆解不存在或多解)

从运动的方式分类

1. move_joint

  • 空间 :纯粹的关节空间运动

  • 行为:

    • 直接指定每个关节的目标角度 [θ₁, θ₂, θ₃, θ₄, θ₅, θ₆]

    • 所有关节以比例同步的方式运动(关节插补),同时开始、同时到达

    • 末端轨迹不可控:末端在空间中走出的路径是复杂的曲线,不可预测

  • 特点:

    • 速度快

    • 路径可能穿过障碍物

    • 编程简单

2. move_line

  • 空间 :笛卡尔空间运动

  • 行为:

    • 指定末端的目标位姿 [X, Y, Z, Rx, Ry, Rz]

    • 末端从当前位置沿一条严格的直线移动到目标位置

    • 姿态通常也线性插补(或保持特定姿态)

  • 特点:

    • 路径精确可控

    • 速度相对较慢(需实时逆运动学计算)

    • 可能遇到奇异点

3. move_pose

  • 空间 :笛卡尔空间(但注意区别!)

  • 行为:

    • 指定末端的目标位姿 [X, Y, Z, Rx, Ry, Rz]

    • 不关心中间路径,只保证最终到达目标位姿

    • 通常控制器会规划一条关节空间的路径到达目标

  • 关键区别:

    • 它和 move_joint 一样是"点到点"运动

    • 但指定的是末端位姿而不是关节角度

    • 控制器内部需要先做逆运动学 ,将位姿转换为关节角度,然后执行类似 move_joint 的运动

  • 特点:

    • 比 move_line 快

    • 路径不可预测

    • 编程直观(用末端位姿思考)

move_pose最终转为move_line:

复制代码
    def move_to_pose(self, pos, rpy_xyz):
        if self.rshd >= 0 and self.connected:
            # 欧拉角转四元数
            ori = robot.rpy_to_quaternion(self.rshd, rpy_xyz)

            # 逆运算得关节角
            joint_radian = robot.get_current_waypoint(self.rshd)

            ik_result = robot.inverse_kin(self.rshd, joint_radian['joint'], pos, ori)

            logging.info("ik_result====>{0}".format(ik_result))
            
            # 轴动到目标位置
            result = robot.move_joint(self.rshd, ik_result["joint"])
            if not result:
                ...
            else:
                return True
        else:
            warn("资源未分配或者未连接机器人!")
            return False

move_joint和move_pose都是点到点的运动,只是一个指定关节角,一个指定最终位姿;

move_line指定是关节角还是位姿,还是都可以?

如何选择?

情况 推荐指令 理由
快速定位,不关心路径 move_joint 或 move_pose 速度最快
路径中有障碍物,需避障 move_joint(配合路径规划) 关节空间规划避障更简单
焊接、涂胶、切割 move_line 必须沿精确轨迹
装配、插入操作 move_line 需要直线接近
示教编程 通常用 move_pose 或 move_line 直观(移动末端到位置)
从外部传感器获取目标位姿 move_pose 自然的数据格式

黄金法则:

  • 要控制末端走的路径 → 用 move_line

  • 只要到达目标,不关心怎么走 → 用 move_joint(最快)或 move_pose(更直观)

  • 避障规划 → 通常在关节空间(move_joint类)进行,因为搜索空间维度高但约束少

4. move_circle

教程

moveL和moveJ

相关推荐
数智工坊1 小时前
视觉SLAM第12讲|地图构建:单目稠密重建、RGB-D点云与八叉树地图全解析
人工智能·深度学习·矩阵·机器人
鲁邦通物联网3 小时前
绿色建筑场景下的机器人梯控设计:任务调度与运行优化方法
机器人·巡检机器人·机器人梯控·非侵入式采集·配送机器人·机器人乘梯·机器人自主乘梯
微咣科技3 小时前
2026 深圳工业机器人电池厂商巡礼:深圳市惠德技术科技,AGV 与移动装备定制锂电池供应商深度评析
科技·机器人
cnbestec5 小时前
当 65 个传感器铺满一只手套:TactileGlove 触觉数据手套如何支撑康复与具身智能研究
机器人·具身智能·pps·pps触觉传感器·人形机器人触觉传感器
中杯可乐多加冰5 小时前
从 SDK 到桌面应用:我用科沃斯八界把视觉、导航和机械臂接起来
人工智能·机器人·sdk·具身智能·科沃斯·八界创造者计划·科沃斯八界
UBIX泛联5 小时前
机器人展风采,存储筑根基——泛联应邀参展电子科技大学70周年校庆展
人工智能·机器人·ai算力基础设施
海盗12346 小时前
AI 新闻日报 2026-10-09:企业代理独立身份、便利店机器人上岗、世界模型接棒
人工智能·机器人·人工智能aigc
机器人猎头David7 小时前
机器人触觉3条路,前沿模型公司选了谁?
机器人·具身智能·工业机器人·机器人猎头·机器人猎头公司
数智工坊8 小时前
视觉SLAM第5讲|相机成像模型:针孔投影、畸变修正与深度感知全拆解
人工智能·深度学习·数码相机·机器人
星创易联8 小时前
无人驾驶通信方案解析:Robotaxi、Robobus与无人矿卡如何选择车载网关?
车载系统·机器人·自动驾驶·信息与通信·无人矿卡