跳到主要内容
Sandbox Physics

M004 · 该向哪里追

追逐与拦截

追上移动的目标,该瞄向哪里? 朝未来的相遇点瞄准。目标横向移动时,直接追着当前位置跑会不断转弯;提前瞄准能缩短路线。转向受限、位置报告太旧或目标突然转弯,都可能让拦截落空。

比较直接追踪、提前瞄准与比例导引。拖动目标,限制转向,延迟它的位置报告,再完成直线目标的最短时间拦截任务。

交互模型追逐与拦截
当前距离3 m3\,\mathrm{m}
接近速率1 m s−11\,\mathrm{m\,s^{-1}}
实际转向率0 ∘ s−10\,{}^{\circ}\,\mathrm{s^{-1}}
追踪状态Tracking\text{Tracking}
直线目标最短拦截时间0 s0\,\mathrm{s}
本次最小距离0 m0\,\mathrm{m}
捕获时间0 s0\,\mathrm{s}
模型时间0 s0\,\mathrm{s}

物理教程

相遇点在目标前方

背景机器人若一直朝着目标现在的位置转,追踪路线会弯起来。提前瞄向未来的相遇点,可以少走一段路。

为什么值得理解先用三种规则追同一个目标,再让目标转弯或延迟它的位置报告。路线短,还得转得过去。

先抓重点

核心问题
追得上,靠的是预测得准,还是转得够快?
一句话直觉
距离不断缩小、视线方向却不变时,双方正朝着相遇走;这与一直对准目标不同。

核心数学模型

恒速运动与转向上限

p˙=vp(cos⁡ψsin⁡ψ),∣ψ˙∣≤Ωp\dot{\mathbf p}=v_p\begin{pmatrix}\cos\psi\\\sin\psi\end{pmatrix},\qquad |\dot\psi|\le\Omega_p

机器人保持速率,只改变方向。转向率上限是运动学限制,不求解电机力矩或轮胎受力。

从延迟的位置报告求视线变化

ro=q(t−τ)−p(t)λ˙o=ro,xr˙o,y−ro,yr˙o,x∣ro∣2\begin{aligned}\mathbf r_o&=\mathbf q(t-\tau)-\mathbf p(t)\\\dot\lambda_o&=\frac{r_{o,x}\dot r_{o,y}-r_{o,y}\dot r_{o,x}}{|\mathbf r_o|^2}\end{aligned}

目标报告可以滞后,自身姿态取当前值。三种反馈规则共用这些报告,不补偿信息年龄;目标在出发前的轨迹也已定义。

恒速机器人中的比例导引

Vc=−ro⋅r˙o∣ro∣a⊥=Nmax⁡(Vc,0)λ˙oψ˙=clip[−Ωp,Ωp](a⊥/vp)\begin{aligned}V_c&=-\frac{\mathbf r_o\cdot\dot{\mathbf r}_o}{|\mathbf r_o|}\\a_\perp&=N\max(V_c,0)\dot\lambda_o\\\dot\psi&=\mathrm{clip}_{[-\Omega_p,\Omega_p]}(a_\perp/v_p)\end{aligned}

把视线转速组成的标量指令,变成垂直自身速度的加速度,再限制转向率。这是平面简化模型,不包含真实导航系统的传感器、姿态与执行器动力学。

直线目标的最早相遇时刻

∣r0+vtT∗∣=vpT∗+ρψ∗=arg⁡(r0+vtT∗)\begin{aligned}|\mathbf r_0+\mathbf v_tT_*|&=v_pT_*+\rho\\\psi_*&=\arg(\mathbf r_0+\mathbf v_tT_*)\end{aligned}

取最早的非负解。在此之前,即使全速走直线,也到不了目标的捕获圆。目标保持匀速直线运动、初始信息无延迟且可自由选择出发航向时,直线路线达到这个下限。

常见难点

始终对准,未必路最短

容易误解最短路线就是一直朝目标现在的位置跑。

正确理解目标横向运动时会离开那个位置。瞄准未来的相遇点,才把它还要走的路算进去。

预测对了,还要转得过去

容易误解知道相遇点,就一定追得上。

正确理解机器人若一开始朝错方向,转过去还需要时间。解析最短时间方案允许预先选好初始航向。

准确的位置也会过时

容易误解位置报告没有误差,就足够了。

正确理解旧报告可以准确地描述过去,目标却还在走。报告年龄也会影响当前该怎么转。

动手实验

  1. 01

    先看直接追踪

    选“追着现在跑”,再点“重放”。

    你会看到: 金色目标横向移动,蓝色路线随之弯曲。
  2. 02

    向前瞄准

    选“向前瞄准”,保持速率和转向上限相同。

    你会看到: 机器人先向目标前方的相遇点修正,路线与捕获用时都改变。
  3. 03

    完成最短路任务

    选“直线目标最短路”,展开预测详情。

    你会看到: 机器人按解析求出的方向出发,捕获用时在数值误差内达到直线目标的理论下限。
  4. 04

    让目标转弯

    选“目标转弯”,再调目标转向率。

    你会看到: 比例导引按视线转速持续修正;直线目标的最短时间结论不再适用。
  5. 05

    让信息慢下来

    选“迟来的位置”,增大目标报告延迟。

    你会看到: 控制器使用旧坐标转向,真实目标仍继续运动。
  6. 06

    保持条件相同再比较

    展开策略模拟比较,保持物理设置不变。

    你会看到: 三种反馈规则共用初始航向、速率、转向限制和延迟报告;未捕获的试验只给出最小距离。
反馈这个页面有错误、看不明白,或者缺了什么?告诉我们
反馈类型

提交时会附带本页地址、Lab ID、网站语言和设备类型。请不要填写个人信息。反馈最多保存 12 个月。隐私政策