第 7 章
无人机的真实个性
无人机为什么会像弹簧一样弹跳?
第 7 章:无人机的真实个性 ↗
控制器就是一个弹簧
米卡: 朱恩问,我们的无人机在地图上处于什么位置。线索:还记得第 2 章里那个弹来弹去的无人机吗?我们把 调得越大,它就弹得越厉害。它看起来完全就像挂在弹簧上的重物。
西奥: “看起来像”不算证据。我们把它们并排放好,把两个方程都写下来。
左边:一个 0.5 kg 的质量块挂在弹簧和阻尼器上(一个充满油的小活塞,用来阻碍运动)。右边:我们的无人机,同样的质量,同样的阻力,在比例控制下。
先把作用在质量块上的每一个力都写下来,一个一个来。位置 从静止点开始量,向上为正。
- 弹簧把它往静止点拉回去,拉伸得越远,拉得越用力:。拉伸两倍远,拉力就是两倍。
- 阻尼器对抗的是运动,而不是位置:。静止不动时,它什么也不做。动得越快,它往回推得越用力。( 就是第 3 章里的速度。)
- 重力只是让静止点稍微往下移一点。从静止点开始量,就把它处理掉了。
力 = 质量 × 加速度,而加速度是斜率的斜率(第 3 章)。把各个力加起来,再把所有项移到一边:
米卡: 所以阻尼器说白了就是讨厌速度的空气?
西奥: 差不多。而且对我们的无人机来说,阻尼器就是空气。
在小部件里,质量块上的橙色箭头是弹簧的拉力,灰色箭头是阻尼器的推力。注意看:每当质量块在摆动的最高点或最低点停下一瞬间,阻尼器的箭头就消失了。
第 7 章:无人机的真实个性 ↗
朱恩: 两条曲线完全重合。不是相似。是一模一样。
看看这两个方程。弹簧用 的力往回推:拉伸得越远,拉得越用力。我们的控制器用 的力去推:离给定值越远,推得越用力。同样的规则。 控制器就是一根弹簧:一根看不见的弹簧,把无人机拉向 2 m。
西奥: 所以 P 控制器就是一根虚拟弹簧,空气阻力 就是一个虚拟阻尼器。我们学到的关于弹簧的一切,都可以免费拿来用。
两个性格旋钮
每一个质量-弹簧-阻尼系统,也就是每一架 P 控制的无人机,都只用两个数来描述。我们一个一个地把它们找出来。
有多快:自然频率
把阻尼器拿掉,我们就回到了第 6 章:弹簧按 摆动,其中 。我们把这个快慢叫作自然频率 :没有任何东西让它慢下来时,系统想要摆动的快慢。
第 7 章:无人机的真实个性 ↗
米卡: 弹簧越硬,摆得越快。那我把 拉满,一切都更好了!
弹簧越硬,拉得越用力,所以摆得越快。质量越重,越难推动,所以摆得越慢。(弧度每秒就是第 5 章里的旋转速度:转一整圈是 2π 弧度,也就是 2π 个半径长的轮缘。)
西奥: 小心。第 2 章里把 调大,无人机变快了,也更爱弹了。先听听阻尼器怎么说。
有多弹:阻尼比
现在把阻尼器放回去。多少阻尼才算“很多”?这取决于弹簧:能驯服软弹簧的阻尼器,几乎拖不慢硬弹簧。所以我们拿一个特殊的量来比较,那就是临界阻尼 :刚好完全消除超调的最小阻尼。
阻尼比 ζ(希腊字母 zeta)就是我们的阻尼占这个量的比例。它是一个纯数,没有单位。ζ = 0 会永远摆下去,ζ = 1 正好是临界,ζ = 0.5 的阻尼只有消除超调所需的一半。
第 7 章:无人机的真实个性 ↗
朱恩: 等等,0.16?这正好是第一个小部件里无人机的 ζ!
西奥: 质量一样、阻力一样、刚度一样,ζ 当然也一样。弹簧和无人机真是双胞胎。
地图上的两个点
现在回到 的地图。像第 4 章和第 6 章那样猜 ,方程就变成 。两边除以 ,再用我们的两个旋钮写出这两个系数:
西奥: 等一下。那个 是从哪儿来的?看起来像是凭空编出来的。
朱恩: 乘出来看看:。还是同一个数,只是换了个名字,这样我们的两个旋钮就出现在方程里了。
用求根公式解它,就得到两个 值:
± 号给出两个答案,对应两个点。点的左右位置是 σ(sigma):这部分运动收缩得有多快。它的高度是 ω:它旋转得有多快。当阻尼小于 1 时,两个点左右位置相同,但高度相反。等于 1 时它们重合;大于 1 时两个点都落在水平轴上。
新词
- 阶跃响应
- 系统对目标突然跳变(这里是从 0 跳到 1 m)的反应。这是展示系统性格的标准方式。
- 调节时间(2%)
- 响应从此一直保持在目标的 2% 以内,需要多长时间。
拨动这两个旋钮试试。观察图上的蓝点:它们就是 的两个取值,在最终稳定下来的高度之上,运动是 和 的混合。(恰好在 ζ = 1 时,两个点合成一个,第二种成分变成 。)
第 7 章:无人机的真实个性 ↗
新词
- 欠阻尼()
- 这两个 值是一对关于实轴对称的镜像点,位于半径为 的圆上。响应会超调并来回振荡,然后才稳定下来。
- 临界阻尼()
- 这一对在实轴上相遇,合成一个重根点,所以运动是 。这是不会超调的最快响应。
- 过阻尼()
- 这一对沿实轴分开:一个向左移动,一个慢慢爬向零点。不会超调,但很迟钝。
欠阻尼的点里还藏着一个细节:它们的高度是 ,比 小一点。阻尼不只是让晃动变小,还会让它稍微变慢。这就是阻尼振荡频率 ,小部件里会显示它。
米卡: 所以第 6 章里的螺旋线一直就是无人机的性格。旋转 = 振荡,收缩 = 稳定!
阻尼越大总是越好吗?
朱恩: 简单。振荡不好,阻尼能消灭振荡。所以为了保险,我设 。史上最安全的无人机。
先预测一下! 同样的弹簧,同样的 。我们把阻尼从 提高到 。它到达目标会更快还是更慢?
第 7 章:无人机的真实个性 ↗
朱恩: 我那台“安全”的无人机慢得要命。就像在蜂蜜里移动一样。
米卡: 看这张图!有一个点飞快地跑到左边去了。但另一个点却停在非常靠近零的位置。
西奥: 而 在 接近零时会非常缓慢地衰减。快的那个一眨眼就没了。慢的那个才是主导。
运动中每一个 成分都叫作一个模态。运动是几个模态的混合,快的那些消失之后,就只剩下最慢的那个。所以对于这个阶跃响应,实际出现的最慢模态决定了漫长的等待时间。
阻尼太小会振荡;阻尼太大则会缓慢爬行。两者之间有一个最佳点。在竞赛里选 ζ = 0.7:它的超调不到 5%,但进入目标的 5% 以内比 ζ = 1 早得多。许多设计把 ζ 定在大约 0.7 到 1 之间,用一点点超调换取速度。其他任务可能偏好不同的平衡。
回到无人机
现在第 2 章终于讲得通了。对于我们的无人机,弹簧常数就是增益:
位于阻尼公式的分母。调大增益会让无人机更快( 更大),但阻尼更小。当 N/m 时:。非常弹跳,正如我们所见。在图上,它的两个 值位于很靠上的位置,只比竖直轴稍微偏左一点。这就是我们无人机所处的位置。
西奥: 而且我们无法在不把 调得很低的情况下获得更多阻尼,而这又会带回静差。我们需要一种刻意增加阻尼的方法。
拖动增益,在一句话里看清这个权衡:
第 7 章:无人机的真实个性 ↗
箭头有长度,也有角度
米卡: 等等。这些点都在半径为 的圆上,ζ 只是让它们绕着圆滑动。所以一个点其实是两样东西:离 0 有多远,以及朝哪个方向。
每支箭头 都可以换一种说法:用它的长度 (课本上叫模)和它的角度(课本上叫辐角)。长度由勾股定理给出。对于指向右边的箭头(),角度就是“升高 ÷ 前进”(也就是斜率)等于 的那个角。它的名字叫反正切,写作 :正切的撤销键。
第 7 章:无人机的真实个性 ↗
第 5 章发现,箭头相乘就是长度相乘、角度相加。除法要把这一步撤销,所以是长度相除、角度相减。
西奥: 那么 :长度是 ,角度是 45° 加 45°,也就是 90°?嗯。再把它乘回 ,它指向 135°,离 1 差得远呢。
朱恩: 那就是减。长 ,角度 −45°。乘以长 、角度 +45° 的箭头,得到长度 1、角度 0°:正好是 1。验算通过。
第 7 章:无人机的真实个性 ↗
那支淡淡的虚线箭头,就是第 6 章里的镜像孪生 (数学家管它叫共轭复数):长度相同,角度相反。把一支箭头乘以它的孪生,角度就抵消了,只剩下一个普通的正数:长度的平方。第 9 章的表正好需要这个:
那个圆又是怎么回事?位于 的极点,长度是 。从负实轴开始量它的角度 θ,向左的部分就是 。所以 :阻尼就是角度。
朱恩: 试试小部件里的第二种设置:1 + iωτ。这就是第 3 章的咖啡规则遇上了摆动。除以它会让箭头缩短并往回转,摆动越快,缩得越多、转得越多,但永远不会超过四分之一圈。我敢打赌,淋浴一定很在乎这个。
新词
- 长度
- 箭头有多长:,其中 。箭头相乘,长度也相乘。
- 角度
- 箭头指向哪个方向,从正实轴算起。对于指向右边的箭头,就是 。相乘时角度相加,相除时角度相减。
- 镜像孪生
- 把箭头沿实轴翻过来得到的 (共轭复数)。。
我们现在知道什么
我们搞清楚了什么
- 一个 P 控制的无人机完全遵循与弹簧上的质量相同的方程:控制器就是一个虚拟弹簧。
- 两个数字概括了它的特性:(多快)和 (多弹跳)。
- 是没有阻尼器时的摆动快慢。 把阻尼与临界阻尼 (刚好消除超调的阻尼)相比较。
- 运动是两个 项的混合。在欠阻尼时,两个 值位于半径为 的圆上;在过阻尼时,它们沿实轴分开。
- 箭头有长度和角度()。相乘就是长度相乘、角度相加;相除就是长度相除、角度相减。。
- 阻尼还会让晃动稍微变慢:。
- 阻尼并不是越大越好:一旦超过 ,那个较慢的 值就会慢慢趋近于零,整个系统也就跟着变慢了。
- 对无人机来说, 越大,阻尼就越小。这就是它变得更晃的原因。
西奥:“我们靠猜得出了这些 值。再加上重力、风、包裹和更聪明的控制器,猜就变得很难看了。有没有一种机器能把这套微积分变成普通代数?”
第 7 章:无人机的真实个性 ↗