news 2026/9/9 4:29:24

机器人--move_type/移动类型

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
机器人--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_jointmove_pose速度最快
路径中有障碍物,需避障move_joint(配合路径规划)关节空间规划避障更简单
焊接、涂胶、切割move_line必须沿精确轨迹
装配、插入操作move_line需要直线接近
示教编程通常用move_posemove_line直观(移动末端到位置)
从外部传感器获取目标位姿move_pose自然的数据格式

黄金法则:

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

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

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

4. move_circle

教程

moveL和moveJ

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/9 15:32:24

揭秘供应链库存失控真相:Agent预警模型如何实现0缺货与低库存平衡

第一章:供应链库存失控的根源剖析供应链库存失控是许多企业运营效率低下的核心痛点。表面看是库存过剩或缺货频发,实则背后隐藏着系统性管理缺陷与信息流断裂。深入剖析其根源,有助于构建更具韧性的供应体系。信息孤岛导致需求预测失真 企业在…

作者头像 李华
网站建设 2026/9/8 12:20:43

嵌入式Linux中工作队列传递参数实现

今天详细分析一下,如何利用linux中工作队列进行参数传递以及实现方法。 第一:工作队列传参 在 Linux 内核的工作队列中, 可以通过使用工作项的方式向工作队列传递参数。 工作项是一个抽象的结构, 可以用于封装需要执行的工作及其相关的参数。 首先我们定义工作项结构,如下…

作者头像 李华
网站建设 2026/9/9 12:16:53

Java Web html+css在线英语阅读分级平台系统源码-SpringBoot2+Vue3+MyBatis-Plus+MySQL8.0【含文档】

摘要 随着全球化进程的加速和互联网技术的普及,英语阅读能力的重要性日益凸显。然而,传统的英语阅读教学往往缺乏个性化分级机制,导致学习者难以匹配适合自身水平的阅读材料,学习效率低下。在线英语阅读分级平台通过智能算法和数据…

作者头像 李华
网站建设 2026/9/9 14:17:35

模型压缩为何让边缘AI效率飙升?,深度解析量化与剪枝的黄金组合

第一章:模型压缩为何让边缘AI效率飙升?在资源受限的边缘设备上部署深度学习模型面临存储、计算和能耗的多重挑战。模型压缩技术通过减小模型体积与计算复杂度,显著提升了边缘AI的推理效率与响应速度。模型剪枝:去除冗余连接 剪枝通…

作者头像 李华
网站建设 2026/9/9 7:39:39

告别模糊照片:5步掌握真实世界图像去噪技术

告别模糊照片:5步掌握真实世界图像去噪技术 【免费下载链接】PolyU-Real-World-Noisy-Images-Dataset Real-world Noisy Image Denoising: A New Benchmark 项目地址: https://gitcode.com/gh_mirrors/po/PolyU-Real-World-Noisy-Images-Dataset 你是否曾经拍…

作者头像 李华