当前位置: 首页 > news >正文

【现代机器人学】一、位形空间(Configuration Space)

1. 引言

如何描述一个机器人的位置?

位形,Configuration. 它描述了机器人身上所有点的位置。

位形空间,C-space,所有位形所在的空间

自由度,Degrees of freedom (dof),位形空间的维数

例如,一个双关节机器人(two-joint robot)的C-space可以被可视化为一个二维的圆环面

2. 刚体自由度的计算

3维空间中的刚体有3个位置自由度,3个角度自由度

n维空间中的刚体,有n个位置自由度,个角度自由度,一共有个自由度

3. 机器人的自由度

机器人的自由度类似于刚体的自由度公式,

机器人运动约束往往来自于关节(joints).

常见的关节类型

常见关节类型
关节名称自由度示意图

旋转关节

revolute joint

1

移动关节

prismatic joint or linear joint

1

万向节

universal joint

2

球关节

spherical joint

3

计算机器人自由度的方法

= # of bodies, including ground

= # of joints

= dof of a single body, 6 for spatial bodies, 3 for planar

该式被称为Grubler's formula,该公式假设各关节提供的约束都是独立的。

例如,开链机器人(3R serial "open-chain" robot)

3R-开链机器人

平面单个刚体自由度,刚体数,关节数,每个关节有1个自由度,

dof=3(4-1)-3×2=3

Stewart平台(六自由度平台),这是一个空间闭链机构,

Stewart 平台

连杆数,2×6+2=14;

每条腿上端是球关节(3dof),下端是万向节(2dof),中间是平移杆(1dof),共6dof,3个关节;

dof=6×(14-1)-6×(3×6-6)=6

4. 位形空间的拓扑(topology)

同样维度的空间可能有不同的拓扑,如果两个形状可以不经过切分和粘合进行相互转化,则该两个形状拓扑等价。

比如,平面和圆环面同属于二维空间,但二者拓扑不同。如果在两者上同时表示同一点,则点的运动可能存在突变(不连续)。

5. 位形空间的表示

  • 显示参数化(Explicit Parametrization)

即使用最少的坐标来表示空间。

  • 隐式表示法(Implicit representation)

它使用更多的坐标,并受到一些约束。

它的思想在于将n维空间嵌入在更高维的空间中,但受到一定的约束。

通常我们使用隐式表示法来表达C-space。

6. 位形和速度约束

例如,一个闭链四连杆机构,

四连杆机构

我们可以将这个C-space视为嵌入在四维空间中的一维空间。该空间由3个闭环方程定义如下,

写成向量形式,定义

该约束被称为完整约束(holonomic constraints),它能够减少C-space的维度

因为g必须始终为0,所以g相对于时间的变化率也恒为0,每一个先对每一个求偏导,然后再对时间求偏导,即

定义第一个矩阵为,速度约束可以写成,称为Pfaffian约束。如果该约束不能通过积分成为等价的位形约束,则称之为非完整约束(nonholonomic constraints)。

7. 任务空间和工作空间

任务空间,Task Space,由任务定义,指出机器人的任务所在的空间,与机器人无关;

工作空间,Works Space,指明了机器人末端执行器(end-effector)可以达到的位形,与任务无关。

http://www.jsqmd.com/news/457952/

相关文章:

  • 短剧系统平台开发:前端后端技术选型与部署
  • 打破芯片壁垒:基于Docker与K8s的GB28181/RTSP异构AI视频平台架构实战
  • 关于 提取git所有提交日志导出到txt文本的 解决方法
  • 地球系统模式(CESM)应用
  • 光伏充电系统建模手记:当PO法遇上三阶段充电
  • DO-254通读--前言执行摘要目录
  • IACheck AI报告文档审核:驱动高端制造合规管理报告审核升级的新引擎
  • npm安装OpenClaw中Git报错解决方法
  • 深入理解 Java 反射:原理、使用场景与性能优化(超详细)
  • 别再瞎找了!AI论文平台,千笔·专业学术智能体 VS 万方智搜AI,继续教育写作首选!
  • 企微私域自动回复机器人:构建 7×24 小时智能响应系统
  • Java 高效实现 Excel 转 HTML:完整指南与代码示例
  • SpringBoot+vue汽车零件商城系统(java+springboot+elementui+vue+mysql)
  • 【Vue.js前端开发实战】第一章
  • 《AI+医疗:专知智库白皮书打通临床验证与市场准入》
  • GitHub镜像站搭建全攻略大纲
  • 今天咱们来聊聊直流开关电源的Simulink仿真。老规矩,直接上干货,手把手带你在R2018b环境里搭个Buck电路试试水
  • EL隐裂检测仪:自动识别隐裂、断栅、碎片等缺陷类型
  • 基于多目标粒子群算法的含风光柴储微网优化调度MATLAB实现
  • 2026年靠谱的GEO公司都有哪些?行业TOP榜单为你揭秘!
  • Flutter 组件 aws_lambda_dart_runtime_ns 的鸿蒙化适配实战 - 实现 OpenHarmony 分布式端高性能云端协同、冷启动指纹预检与工业级边缘计算核方案
  • Qt控件圆角
  • OpenClaw0307版本来了!!修复超过200bug 版本更新指南附上
  • 2026年东莞知名律所靠谱排名有哪些?
  • 电机PID,串级PID,MIT的PD、tor调参的经验之谈
  • 别再给旧OA/ERP系统打补丁了:为什么说“孤岛式”的自动化活不过今年?
  • 2026年海东抖音代运营公司排行榜发布TOP5名单
  • 新浪舆情通:多维舆情分析 让信息洞察更高效
  • Flutter 组件 clean_network 适配 鸿蒙Harmony 实战 - 驾驭核心大网络强隔离中枢、构建原生且纯净极简大请求防崩拦网
  • dora工具简要介绍