教程 · 中级 · 25 分钟

机器人能推多大力:取决于附着力与自重

机器人能推多大力,取决于摩擦力允许多少,而不是电机能转多有劲。这两个天花板在哪里相交,为什么一把铲子胜过更大的电机。

两天花板,而其中只有一天是你的

问一台机器人能推多狠,有两个答案。

电机给一个。堵转扭矩除以轮半径,再乘驱动轮的数量,就是传动能在触地点放出的最大力:

F_motor = n × T_stall / r

地面给另一个。轮子推得多狠,真正把力传出去的是摩擦:

F_traction = µ × N

N 是压在驱动轮上的重量。机器人只能交付两者中较小的那个,而整个设计问题就是你撞上了哪一个。

它们在哪里相交

拿两颗 6 V 金属减速电机,每颗堵转扭矩 0.20 N·m,配 32 mm 轮子:

F_motor = 2 × 0.20 / 0.016 = 25 N

二十五牛顿大约是 2.5 kgf——足够推动一个比机器人重得多的东西。现在把两个天花板设成相等,解出它们相遇时的质量:

m* = F_motor / (µ × g)
上下两幅堆叠图。上面一幅是推力对机器人质量:硅胶胎摩擦 1.2 与硬塑料轮摩擦 0.7 各画一条从原点上升的直线,另有一条 25 牛顿的水平虚线标出电机堵转处。一条点状竖线标出 500 克的迷你相扑级别极限,它位于两条上升线与虚线相交处左边很远。下面一幅是你的推力与对手推力之比随你的铲承担对手重量比例从零升到 50% 而从 1 升到 3,并标出 40% 处给出 2.3 倍。
上:换上硅胶胎后两个天花板在 2.12 kg 处相遇。一台 500 g 的机器人坐在 5.9 N 上——只有电机所能交付的24%。下:两台本来完全相同的机器人之间,推力比恰好是 (1+f)/(1−f),其中 f 是你的铲承担的对手重量比例。 下载 SVG

在硅胶上(µ ≈ 1.2),交点是 2.12 kg。在底盘套件附带的那种硬塑料轮上(µ ≈ 0.7),交点是 3.64 kg。两者都远重于一台小车,而这个单一事实会把整台机器重新组织一遍:

**一台业余重量的机器人永远受附着力限制。**500 g 配硅胶,你能推出 5.9 N,而传动能给出 25 N。买更强的电机改变不了任何你用得上的东西。

这就是为什么每一台竞赛机器人都按重量上限来造

迷你相扑把机器人限定在 500 g、10 × 10 cm 的占地内。带着这条上限去读上面那幅图,这条规则就显得不再随意:它把每一个参赛者深深推进附着力受限的区间,在那里推力与质量成正比,而没有人能靠花钱买电机逃出去。

所以规则书其实是在说重量就是资源,而设计上的推论直接跟着来:

  • **造到上限。**一台 400 g 的机器人白送出去自己 20% 的推力。压舱配重是一个正当的零件。
  • **每一克都放到驱动轮上。**压在一个自由滚动万向轮上的重量产生不了任何附着力。一台架在低摩擦滑板上做平衡的两轮机器人,几乎把 100% 的质量都用上了;同一台机器人尾部装个万向轮,可能只有 65% 在干活。
  • **不要为了加附着力而多加一个轮子。**四个驱动轮分摊的是同一份总重量,所以 µN 不变。你得到了冗余而没有损失——但你也没有得到推力。

轮胎是你能找到的最便宜的 70%

上面那幅图两条线之间的差距就是一个材料选择。µ 1.2 的硅胶对 µ 0.7 的硬塑料,在同样质量下是多 72% 的推力,代价只是一套轮胎的钱。

机器人身上别的东西没有这个性价比的。为它不择手段是值得的:

  • 硅胶或软聚氨酯,不要套件里那种模塑塑料或硬橡胶。
  • **把它们擦干净。**轮胎上的灰尘是一层 µ 低得多的薄膜,而这就是一台昨天还推得动的机器人今天推不动的原因。胶带、酒精,每跑之前都做。
  • 宽触地点不会提高 µ,但它确实分散了负载、而且磨得更慢。它在原地转向时也会刮得更狠,所以这是一个真实的取舍。

大于 1.0 的系数在那些学过“摩擦有上限”的人看来像是错的——它不是。µ 是一个经验比值,而软聚合物在干净硬表面上的系数确实能超过 1。

铲比电机更值钱

到目前为止一切都把 N 当成机器人自己的重量。一把能插到对手底下的铲在两个方向上同时打破了那个假设:它抬起的重量加到你的法向力上,同时又从对手那里减掉。

对两台等质量的机器人,如果你的铲承担了对手重量的一个比例 f:

push ratio = (1 + f) / (1 − f)

下面那栏就是这条曲线,而且它很陡:

抬起比例 你的推力 ÷ 对方的
0% 1.00
20% 1.50
40% 2.33
50% 3.00

插到对手下面 40% 就让这个差距翻一倍还多,而且是在电机相同、质量相同、轮胎相同的前提下。你能做的其他任何改动都远不到这个量级,这也是相扑机器人的前沿是下功夫所在的原因。

把它做成功是一个机加工问题而不是物理问题:

  • **前沿必须比对手的低。**一把遇上平板的铲只会推。薄片、磨出刃口,离地只骑几十分之一毫米。
  • **它必须在负载下守住那个高度。**装在柔性支架上的铲会骑到对手身上而不是钻到下面,于是把整个计算的符号反过来。
  • **对称是要付出代价的。**两把相同的铲刃对刃相遇,谁也抬不起谁。唯一的出路是更低,于是这变成了一场以十分之一毫米为单位的军备竞赛。

重心:低,而且在驱动轴之前

两个分开的效果,经常被混为一谈。

低防的是被抬起来。对手的铲在你的前沿施加一个向上的力;那是把你掀翻还是从你下面滑过去,取决于那个反作用力要走多远才能到达你的质心。一台高的机器人就是把杠杆递给了对方。

前是在给铲加载。推的反作用力在接触高度上朝后作用,它把 F × h / L 从前支撑转移到后支撑,轮距记作 L。对一把在 70 mm 轮距上以 5.9 N 推、接触高度 5 mm 的铲,那是 0.42 N——约 43 g,小恰恰是因为接触点低。这不值得依赖,但它确实意味着一台驱动轮位于接触点之后的机器人在推的时候多出一点附着力,而轮子在接触点前方的则少一点。

对推在电气上要付多少

一台在附着力极限上推的机器人,就是一台电机转不动的机器人。那正是堵转的定义,也是传动最贵的一个状态:

  • **持续的堵转电流。**那些 0.20 N·m 的电机堵转时各吃大约 1.6 A,所以一场推搡比赛从一个平时大部分时间在 0.5 A 附近的电池包里拿出约 3.2 A。
  • **电源轨恰好在你最需要它的时候塌下去。**这是欠压机制的最坏情形,而一个在推搡中途复位的控制器已经判负了。
  • **全部变成热。**没有机械功从电机里出来,所以每一瓦都是绕组里的 I²R。回合短是有充分理由的。

按堵转电流而不是平均电流给电池包容量,并且把电机驱动器的选择放在同一个基础上。

十分钟量出来

两个数、一台行李秤,你就知道自己撞在哪一层天花板上。

**附着力那个数。**电机关着,把机器人扶住,秤钩住它水平拉,直到它滑动。读数除以机器人的重量就是你的 µ。要在真实表面上做——比赛场地、你家厨房地面和一张工作台是三种不同的材料。

**电机那个数。**把轮子抵在某个不可动的东西上,下发全速前进,然后用秤往回拉,直到机器人移动。那个读数就是 F_motor,是实测出来的,而不是从一份你只信一半的数据手册上插值出来的。

两者中较小的那个就是机器人实际拥有的。如果它们相差约 20% 以内,你有一个匹配良好的设计;如果附着力只有电机数的四分之一——在小机器人上就会是这样——那么此后每一克重量、每一次换胎、每一毫米铲,都比你能对传动做的任何事更值钱。

出问题时

现象 通常原因
轮子转、机器人不动 受附着力限制——正常答案。加质量、换轮胎
电机彻底堵死而轮子不转 受电机限制:少见,而且意味着减速比太大
昨天推得动,今天推不动 轮胎上有灰尘或油膜;每跑之前清洁
明明开局赢了却被推回去 对方的铲插到了你的铲下面——是高度问题,不是功率问题
一推前沿就翘起 接触点相对轮距太高,或者重心太靠后
推的过程中复位 堵转电流把电源轨拉塌——见电源预算
只有加速时轮子才转 这不是推的问题——是下发了阶跃。用运动曲线

贯穿始终的主题是:在一台小机器人上,有意思的那些数字全是机械的。传动有余量,而选电机是一个关于速度和电流消耗的问题,远多于关于推力的问题。

一旦机器人能推,下一个约束就是能停——定下你推力的那个摩擦系数同样定下你在边缘处的停车距离,而迷你相扑制作把两者放在一起。

还没开始就先放弃 29% 的那种轮子

有一种传动打破了上面的算术,而知道它是往哪个方向破的值得。一颗麦克纳姆轮只能沿滚子的轴线咬合,而那条轴线与它滚动的方向成 45°。摩擦仍然把整个力矢量限制在 µN——但只有沿滚动方向的那个分量才推得动机器人,所以每轮的有用力是:

F_useful ≤ μN / √2  ≈  0.71 μN

所以一台全向底盘在推搡比赛里的起点,就是同一台机器人用普通轮子时附着力的 71%,而这还没算滚子的橡胶通常比轮胎更滑。而前面那个压舱的技巧也失效了:质量在 µg/√2 里约掉了,所以加重量买到的附着力和买到的惯量恰好等量。

这就是整个设计决策的一句话——如果推搡是重点,就不要买横向运动。比较各种传动。

同一个 µN 论证还会出现在机器人的另一端,那里接触面是一根指尖而不是一只轮胎——而在那里摩擦极限不再是一个数,而变成一个你能画出来的形状。那就是摩擦、力封闭与两触点是赌注。

探索关联图谱

本教程所属的搭建

包含本教程的项目和学习路线。

延伸阅读

参考资料