彩虹圈为什么会自己走下楼梯?
把彩虹圈放在台阶边缘,轻推一下,它就会一级一级地“走”下去。这是我们物理实验 PBL(题目类别三:彩虹圈)研究的问题:彩虹圈的下落与翻转下楼梯动力学。我们做了一个可交互的 3D 实验台,下面可以直接上手。
关于参数
实验台里的“塑料彩虹圈 / 金属 Slinky”预设是示例数据,可以在右侧面板按实物测量值修改后“应用参数并重置”。
从一维链到“平面刚性圈”
最简单的模型是一维质点—弹簧链:
所以实验台用的是平面刚性圈模型:每一圈是一个刚性圆环,在竖直平面内有 3 个自由度——圈心
- 三根轴向弹簧:两侧边缘(
)各一根、圈心一根,同时给出拉伸刚度和弯曲刚度; - 边缘接触:圈与圈不能互相穿透,被压紧时只能推、不能拉;
- 一根剪切弹簧:阻止相邻两圈横向错开;
- 地面 / 台阶接触:边缘点与台面、竖直面、倒圆棱角的接触,带库仑摩擦。
参数从哪来
整体轴向劲度由悬挂伸长量反推,再分配给相邻圈:
弯曲刚度与剪切劲度取螺旋弹簧理论的近似:
积分用半隐式(辛)欧拉法,步长
下落:底端为什么会“悬停”
把彩虹圈的顶端提起让它自然悬挂,然后松手。直觉上整根彩虹圈会一起下落,但实际上:底端几乎原地不动,直到压缩波从顶端传下来。
松手前,底端受到的弹簧拉力恰好与重力平衡;“松手”这个信息要以有限速度沿弹簧传播,波前到达之前,底端受力不变,所以纹丝不动。外力只有重力,因此质心始终严格自由落体
以塑料彩虹圈示例数据(
悬挂时彩虹圈还是上疏下密的:第
下楼梯:能量从哪来
实验台的“下楼梯实验”里,先由“手”把最上面一圈沿弧线翻到下一级(0.9 s),松手后完全靠重力和弹力继续走:
- 翻下去的一端被重力拉长,彩虹圈弯成拱形;
- 弯曲内侧的圈被压紧、外侧被拉开——这正是“只能拉不能压”的接触约束在起作用;
- 拉伸的弹簧把后一端拽起、越过拱顶,翻转到下一级;
- 落地碰撞和摩擦耗散一部分能量,而每下一级,质心下降一个台阶高
,重力势能 又补充回来。
只要每级释放的势能能补偿翻转中的耗散,运动就能自持地一级级进行下去。台阶太高或太宽,翻过去的一端够不到下一级,走一两步就会停下——在实验台里把台阶从 6×12 cm 改成标准楼梯 17×28 cm 就能看到区别。
数值实现要点
// 每一步:先算所有力与力矩,再统一积分(半隐式欧拉)
for (let i = 0; i < N; i++) {
vx[i] += fx[i] / m * dt; vy[i] += fy[i] / m * dt; w[i] += tq[i] / I * dt
x[i] += vx[i] * dt; y[i] += vy[i] * dt; th[i] += w[i] * dt
}- 转动惯量:薄圆环绕直径
; - 接触阻尼比 取 0.3:显式积分下,转动的“之字形”模式要求阻尼比不超过约 0.5;
- 渲染:由每圈的
插值出一条连续的螺旋条带网格,颜色沿圈数渐变成彩虹色。
参数表(塑料彩虹圈示例)
| 参数 | 符号 | 示例值 |
|---|---|---|
| 总质量 | 50 g | |
| 圈数 | 40 | |
| 压缩高度 | 7 cm | |
| 自然悬挂长 | 120 cm | |
| 外半径 | 3.5 cm | |
| 条带宽 | 6 mm | |
| 台阶(可持续行走) | 6 × 12 cm | |
| 摩擦系数 | 0.6 |
[待补充:实物测量值、高速摄像对比、不同台阶下能否稳定行走的实验记录]
下一步
- 用高速摄像测量“底端悬停”的持续时间,与
对比; - 系统扫描台阶高宽,找出能持续行走的临界条件;
- 用实测数据标定
、 与摩擦系数。