差速两轮机器人位移与航向角增量计算

差速两轮机器人位移与航向角增量计算(零基础详解)

差速两轮机器人是移动机器人里最基础、最常用的构型,像常见的巡检小车、扫地机器人很多都是这种结构。它的核心原理是通过控制左右两个轮子的转速差,实现前进、后退、转向等运动 。我们要解决的问题就是:已知左轮线位移增量右轮线位移增量轮距 ,怎么计算车体中心的平移增量航向角增量

先明确:所有带 "增量" 的物理量,指的都是在一小段时间 Δt 内,机器人的运动变化量,因为机器人的运动是连续的,取极短时间的增量可以近似认为这段时间内做 "匀速 / 匀角速度运动",方便计算。

一、 先搞懂所有专业名词

1. 左轮线位移增量 / 右轮线位移增量

  • 名词解释
    • 线位移:物体沿直线方向移动的距离,单位是米(m)。
    • 增量 :指在极短时间 Δt 内,轮子滚动产生的线位移变化量,分别记为 ΔsL(左轮)、ΔsR(右轮)。
  • 通俗理解:就是在一瞬间,左轮滚了多长,右轮滚了多长。比如左轮滚了 0.02m,右轮滚了 0.03m,那 ΔsL=0.02m,ΔsR=0.03m。
  • 补充:轮子的线位移和轮子的转动角度有关,公式是 Δs=r⋅Δθ,其中 r 是轮子半径,Δθ 是轮子的角位移增量(弧度)。这个公式可以辅助理解,但咱们这次计算不用它。

2. 轮距

  • 名词解释 :差速机器人两个驱动轮中心之间的水平距离,记为 b,单位是米(m)。
  • 通俗理解:把机器人看成一个小车,两个后轮(驱动轮)之间的宽度就是轮距。比如扫地机器人的轮距可能是 0.2m,工业巡检小车的轮距可能是 0.5m。
  • 注意:轮距是固定值,一旦机器人造好,b 就不会变了。

3. 车体中心

  • 名词解释 :差速机器人的几何中心 ,通常定义为两个驱动轮中心连线的中点,记为点 C。
  • 通俗理解:把两个轮子的中心连一条线,这条线的正中间就是车体中心。机器人的位置,一般都是用车体中心的坐标来表示的。

4. 车体中心的平移增量

  • 名词解释 :在极短时间 Δt 内,车体中心 C 移动的直线距离,记为 ΔsC,单位是米(m)。
  • 通俗理解:就是机器人的 "中心点" 在这一瞬间往前走 / 往后退 / 斜着走了多远。

5. 航向角增量

  • 名词解释
    • 航向角 :机器人的前进方向与世界坐标系 x 轴的夹角 ,记为 θ,单位是弧度(rad)(机器人领域不用角度,必须转成弧度)。
    • 航向角增量:极短时间 Δt 内,航向角的变化量,记为 Δθ,单位是弧度(rad)。
  • 通俗理解:就是机器人在这一瞬间 "转了多少弯"。Δθ>0 表示逆时针转,Δθ<0 表示顺时针转,Δθ=0 表示直线运动。

二、 核心假设(为什么能这么算)

因为我们取的是极短时间 Δt ,在这段时间内,机器人的运动可以近似为:绕着一个瞬时旋转中心(ICC) 做圆周运动。

这个假设是所有计算的基础!简单说:不管机器人是直线走还是转弯,极短时间内都像在画一个小圆弧。

三、 计算公式推导与讲解(从易到难)

我们分两种情况讨论:直线运动转向运动,转向运动是通用情况,直线运动是转向运动的特例。

情况 1:直线运动(左右轮线位移增量相等)

当 ΔsL​=ΔsR​=Δs 时,机器人做直线运动。

  • 航向角增量:机器人没有转弯,所以航向角不变。Δθ=0

  • 车体中心的平移增量:中心点移动的距离和轮子移动的距离相等。ΔsC​=ΔsL​=ΔsR​

  • 例子:左轮滚了 0.05m,右轮也滚了 0.05m,轮距 0.2m。则 Δθ=0,ΔsC​=0.05m,机器人直线前进 0.05m。

情况 2:转向运动(左右轮线位移增量不相等)

这是通用情况,ΔsL​=ΔsR​,机器人会绕瞬时旋转中心转弯。

步骤 1:计算航向角增量 Δθ

核心逻辑:左右轮的线位移差,是由 "绕瞬时中心旋转" 引起的,而线位移差和轮距、航向角增量直接相关。

我们想象机器人绕瞬时中心转了一个小角度 Δθ,此时:

  • 左轮走过的圆弧长度:ΔsL=RL⋅Δθ
  • 右轮走过的圆弧长度:ΔsR=RR⋅Δθ其中 RL 是左轮到瞬时中心的距离,RR 是右轮到瞬时中心的距离。

又因为轮距 b=RR​−RL​(右轮离瞬时中心更远,差值就是轮距)。

把上面两个式子相减:ΔsR​−ΔsL​=(RR​−RL​)⋅Δθ=b⋅Δθ

整理得到航向角增量的公式:Δθ=bΔsR​−ΔsL​​

  • 公式解读
    1. 单位验证:分子是长度(m),分母是长度(m),所以 Δθ 是无量纲的?不对!这里的长度相除后,结果的单位是弧度(rad),因为弧度的定义就是 "弧长 / 半径",本身无量纲,但物理意义是角度。
    2. 符号意义:ΔsR>ΔsL 时,Δθ>0,机器人逆时针转 ;ΔsR<ΔsL 时,Δθ<0,机器人顺时针转
    3. 特殊情况:ΔsR=ΔsL 时,Δθ=0,和直线运动一致。
步骤 2:计算车体中心的平移增量 ΔsC​

车体中心是两轮连线的中点,所以中心点到瞬时旋转中心的距离 RC​=2RL​+RR​​。

而中心点的平移增量就是中心点走过的圆弧长度:ΔsC​=RC​⋅Δθ

把 RL​=ΔθΔsL​​、RR​=ΔθΔsR​​ 代入 RC​:RC​=2ΔθΔsL​​+ΔθΔsR​​​=2ΔθΔsL​+ΔsR​​

再代入 ΔsC​=RC​⋅Δθ,可以消掉 Δθ,得到最终公式:ΔsC​=2ΔsL​+ΔsR​​

  • 公式解读
    1. 不管机器人是左转还是右转,车体中心的平移增量,都等于左右轮线位移增量的平均值
    2. 单位:米(m),和轮线位移单位一致。
    3. 特殊情况:直线运动时,平均值等于单个轮子的位移,和情况 1 一致。

总结:核心公式表

物理量 符号 计算公式 单位
航向角增量 Δθ Δθ=bΔsR​−ΔsL​​ 弧度(rad)
车体中心平移增量 ΔsC​ ΔsC​=2ΔsL​+ΔsR​​ 米(m)

四、 实例计算(帮你彻底理解)

已知条件:差速机器人轮距 b=0.2m,在 Δt 时间内,左轮线位移增量 ΔsL​=0.03m,右轮线位移增量 ΔsR​=0.05m。

计算步骤

  1. 计算航向角增量Δθ=0.20.05−0.03​=0.20.02​=0.1 rad结果为正,说明机器人逆时针转了 0.1 弧度(约 5.73 度)。

  2. 计算车体中心平移增量ΔsC​=20.03+0.05​=20.08​=0.04 m说明机器人的中心点在这段时间内移动了 0.04 米。

**再换一个例子(顺时针转)**已知 b=0.2m,ΔsL​=0.05m,ΔsR​=0.03m

  • Δθ=0.20.03−0.05=−0.1 rad(负号表示顺时针转)
  • ΔsC=20.05+0.03=0.04 m

五、 易错点提醒(期末复习重点)

  1. 单位问题 :航向角增量的单位是弧度,不是角度!如果题目要求角度,需要用公式 角度弧度 转换。
  2. 符号问题:Δθ 的正负代表转向方向,记住 "右轮快,逆时针转;左轮快,顺时针转"。
  3. 增量的含义:所有 Δ 开头的量都是 "变化量",不是 "总量",必须是极短时间内的数值,否则假设不成立,公式会有误差。
  4. 车体中心的定义:必须是两轮中心连线的中点,不能随便选其他点,否则公式不适用。
相关推荐
美酒没故事°1 天前
Open WebUI安装指南。搭建自己的自托管 AI 平台
人工智能·windows·ai
云烟成雨TD1 天前
Spring AI Alibaba 1.x 系列【6】ReactAgent 同步执行 & 流式执行
java·人工智能·spring
Csvn1 天前
🌟 LangChain 30 天保姆级教程 · Day 13|OutputParser 进阶!让 AI 输出自动转为结构化对象,并支持自动重试!
python·langchain
小O的算法实验室1 天前
2026年ASOC,基于深度强化学习的无人机三维复杂环境分层自适应导航规划方法,深度解析+性能实测
算法·无人机·论文复现·智能算法·智能算法改进
AI攻城狮1 天前
用 Obsidian CLI + LLM 构建本地 RAG:让你的笔记真正「活」起来
人工智能·云原生·aigc
鸿乃江边鸟1 天前
Nanobot 从onboard启动命令来看个人助理Agent的实现
人工智能·ai
lpfasd1231 天前
基于Cloudflare生态的应用部署与开发全解
人工智能·agent·cloudflare
俞凡1 天前
DevOps 2.0:智能体如何接管故障修复和基础设施维护
人工智能
comedate1 天前
[OpenClaw] GLM 5 关于电影 - 人工智能 - 的思考
人工智能·电影评价
财迅通Ai1 天前
6000万吨产能承压 卫星化学迎来战略窗口期
大数据·人工智能·物联网·卫星化学