本节摘要:平衡就是主矢与主矩双双为零,平面问题翻译成三条独立方程;未知数比方程多几条,问题就超静定几次——这句对账口诀是本章的灵魂。本节给出平衡方程的三种形式与选用技巧,用靠墙梯子做完整解剖,教你看穿静定与超静定,并引入虚位移原理这条绕开反力的暗道。
前两节备齐了材料:力系理成主矢主矩(3.1),未知的约束反力画全(3.2)。本节正式开账:令主矢为零得两条投影方程,令主矩为零得一条矩方程,平面任意力系的平衡账本就这么三页。它向上是 3.1 节"四种结局判别表"第一行的算术化,向下是全册的操作分水岭——本章内能解的叫静定问题,解不动的叫超静定问题,两者的分界线只是一次减法:未知数个数减方程个数。
动笔前先做这次减法,是受力分析的行规。减出来是零,放心解;是正数,趁早宣布"缺条件",把问题转给材料力学的变形协调或第八章的数值方法——比硬算到一半才发现缺方程体面得多,也快得多。
平衡方程不是只有一副面孔。基本式:两条投影加一条对任一点的矩。二矩式:两条矩方程加一条投影方程,但两个矩心的连线不得垂直于投影轴。三矩式:三个矩心不共线。形式换来换去,独立的始终是三条——多写一条矩方程也不是错误,只是它必然能由前三条推出来,白费一行。
选形式的技术含量全在"让未知数缺席":矩心取在两根未知反力的交点上,矩方程里就一个未知数,一步出结果。3.2 节的简支梁已经演示过这一手(矩心取 A 端,先出 RB)。写完方程先数一数:三条方程、三个未知数,对账通过再解;这习惯就是静定判别的逐题版本。
十五公斤的梯子靠在光滑竖直墙上,与地面夹角 θ,地面摩擦系数零点四。梯子受四根力:重力(中点竖直向下)、墙面法向反力(水平,光滑墙无摩擦)、地面法向反力与地面摩擦(竖直与水平)。三条平衡方程依次写下,矩心取梯脚,让地面两根反力从矩方程里消失,墙反力当场解出;再把打滑条件(摩擦需求超出支付上限)写成不等式,最小安全角度立刻现形。
# 靠墙梯子:三条平衡方程 + 打滑判据 import math m, L, g, mu = 15.0, 5.0, 9.8, 0.4 W = m * g # 设梯与地面夹角 th,墙光滑: # 水平:Nw - f = 0 (墙反力 Nw 与地面摩擦 f 平衡) # 竖直:Nf - W = 0 (地面法向反力扛全部重力) # 绕梯脚取矩:W*(L/2)*cos(th) - Nw*L*sin(th) = 0 def wall_force(th_deg): th = math.radians(th_deg) return (W / 2) / math.tan(th) # 由矩方程解出 Nw for th in [60.0, 70.0]: Nw = wall_force(th) f_need = Nw # 打滑与否看摩擦需求 f_max = mu * W # 摩擦支付上限 = mu * Nf print(f"角度{th:.0f}度: 墙反力={Nw:.2f} N, 摩擦需求={f_need:.2f} N, 上限={f_max:.2f} N, 稳固={f_need<=f_max}") # 输出: # 角度60度: 墙反力=42.44 N, 摩擦需求=42.44 N, 上限=58.80 N, 稳固=True # 角度70度: 墙反力=26.69 N, 摩擦需求=26.69 N, 上限=58.80 N, 稳固=True # 临界角:需求恰好等于上限 (W/2)*cot(th) = mu*W th_min = math.degrees(math.atan(1 / (2 * mu))) print("最小安全角 =", th_min, "度") # 51.34019174590991
结论读出来有工程味:梯子越立越陡,墙反力按余切规律减小、摩擦需求随之下降;夹角小于五十一点三度,摩擦账面立刻穿底。地面越糙(μ 越大),临界角越低,梯子摆得越平。整台手术只用了三条方程加一条不等式——静力学的主菜就是这四行。
超静定判别是逐结构类型的经验账:平面里每根杆件在一般力系下贡献三条方程。汇总成一张速查表:
# 静定对账速查:未知数减独立方程数 = 超静定次数 cases = [ ("简支梁(铰加滚支)", 3, 3), ("悬臂梁(固定端)", 3, 3), ("简支梁外加一滚支", 4, 3), ("两端固定梁", 6, 3), ("三角桁架(3杆3铰)", 3+3, 2*3), # 3 根杆 + 3 根支反力 对 2*铰数 条节点方程 ] for name, unknown, eqs in cases: n = unknown - eqs verdict = "静定" if n == 0 else f"超静定 {n} 次" print(f"{name}: 未知 {unknown},方程 {eqs} → {verdict}") # 输出: # 简支梁(铰加滚支): 未知 3,方程 3 → 静定 # 悬臂梁(固定端): 未知 3,方程 3 → 静定 # 简支梁外加一滚支: 未知 4,方程 3 → 超静定 1 次 # 两端固定梁: 未知 6,方程 3 → 超静定 3 次 # 三角桁架(3杆3铰): 未知 6,方程 6 → 静定
桁架那行藏着一条通用公式:简单桁架的杆数必须等于铰数的两倍减三,杆少则机构会散架,杆多则超静定。这条公式是 3.2 节"反力个数对自由度账"的批量版。
最后看绕开反力的暗道——虚位移原理:受理想约束的平衡系统,任给一组约束允许的虚位移,主动力做的虚功之和必为零。它的妙处在于约束反力不做虚功,根本不进方程。杠杆是最好的速写:力 F 压在长臂端,短臂端顶住重物,绕支点虚转一个小角,两端的虚位移与臂长成正比,虚功方程 F 乘长臂减 W 乘短臂为零——直接读出杠杆定律,全程没碰过支点的反力。
# 虚位移原理速写:杠杆的虚功对账 F, L1 = 200.0, 1.00 # 施力 N,长臂 m W, L2 = 800.0, 0.25 # 重物 N,短臂 m # 虚转角 dth:长臂端虚位移 L1*dth,短臂端虚位移 L2*dth dth = 0.01 dA, dB = L1 * dth, L2 * dth virtual_work = F * dA - W * dB print("虚功 =", virtual_work, "J") # 0.0 print("杠杆条件 F*L1 == W*L2:", F*L1 == W*L2) # True # 支点反力全程未出现:理想约束的虚功自动为零
⚠️ 常见坑:对"未知数多一个"的问题硬套三条平衡方程。多出来的那条方程不存在——不是难找,是物理上不提供;继续算下去的人,要么偷偷用了错误的变形假设,要么干脆编数字。
要点复盘:
静力学的解剖流程到此走完。下一章把方程右端的零换成 ma——同样的隔离体、同样的反力画像,物体开始加速,动力学的手术台就要开台了。