1.2 力系平衡、桁架与摩擦


1.2 力系平衡、桁架与摩擦

平衡条件:平面力系作用下物体平衡的充要条件是主矢与主矩同时为零,即所有力的水平、竖向投影和为零,且对任意一点的力矩和为零。本节用这一条件求解支座反力与桁架内力,并处理带摩擦的平衡区间问题。

上一节画好了自由体图,这一节列方程结案。它在知识体系里是静力学的"运算核心":第 5 章画内力图前要先算支座反力,第 4 章的轴力也来自这里的截面平衡,摩擦判据则直接通往机械设计里的自锁计算。

平衡方程的三种写法

平面任意力系的平衡方程不止一种形式,任何一种都等价于"主矢为零 + 主矩为零":

形式 方程 限制条件
一矩式 两个投影方程 + 一个力矩方程
二矩式 一个投影 + 对两点各一个力矩 两点连线不得垂直于投影轴
三矩式 对三点各一个力矩 三点不得共线

选哪个形式纯粹是算术方便:矩心取在多个未知力的交点上,那些未知力就不出现在力矩方程里。独立方程数对单个刚体恒为 3;未知力超过 3 就超静定,需要第 5 章之后的变形协调条件补充。

一个完整算例:外伸梁受集中力与均布载荷,求反力并校核。

import numpy as np # 外伸梁:A 处固定铰(x=0),B 处滚动(x=5);AB 段均布 q=8 kN/m, # 外伸端 C(x=7) 有集中力 P=15 kN,向下。 q, P = 8.0, 15.0 xA, xB, xC = 0.0, 5.0, 7.0 # 未知:Ax, Ay, By。平衡:sum Fx=0, sum Fy=0, sum M_A=0 # sum Fx: Ax = 0(无水平载荷) # sum M_A: By*5 - q*5*2.5 - P*7 = 0 By = (q * 5 * 2.5 + P * xC) / (xB - xA) # sum Fy: Ay + By - q*5 - P = 0 Ay = q * 5 + P - By print(f"Ax = 0 kN, Ay = {Ay:.2f} kN, By = {By:.2f} kN") # 用矩阵形式再解一遍,体会标准流程 A = np.array([ [1.0, 0.0, 0.0], # sum Fx [0.0, 1.0, 1.0], # sum Fy [0.0, 0.0, xB - xA], # sum M_A(Ay、Ax 过矩心无力臂) ]) b = np.array([0.0, q * 5 + P, q * 5 * 2.5 + P * xC]) sol = np.linalg.solve(A, b) print(f"矩阵解:Ax={sol[0]:.2f}, Ay={sol[1]:.2f}, By={sol[2]:.2f}") # 校核:对 C 取矩应等于零 check = Ay * xC - By * (xC - xB) - q * 5 * (xC - 2.5) print(f"对 C 点力矩校核 = {check:.4f} kN·m(应接近 0)")

运行得到 Ay = -1 kN、By = 56 kN:A 处反力为负,说明实际方向向下——外伸段把 A 端"撬"起来了。负号不是错误,是方向信息,这类解读能力比会解方程更重要。

桁架:载荷路径最透明的结构

桁架由二力杆铰接而成,载荷只作用于节点,杆件只受轴向拉压。载荷路径清清楚楚:外力进节点,沿杆件轴向分段传递,最后汇入支座。求内力两条路:

  • 节点法:逐个节点列平面汇交力系平衡(每节点 2 个方程),适合求全部杆力;
  • 截面法:假想切断三根杆,取一侧为隔离体列 3 个方程,适合只问某几根杆。
import numpy as np # 简单桁架:5 个节点,7 根杆。跨度 2L,高 h,节点载荷 P 在顶点 L, h, P = 2.0, 1.5, 20.0 # 单位 m, kN # 节点坐标: A(0,0) B(2,0) C(4,0) D(1,h) E(3,h),载荷 P 作用于 D # 支座:A 固定铰,C 滚动(竖向) Ay = By = P / 2 # 对称,竖向反力各半 # 节点法从 A 开始:杆 AD 与 AB 的内力(设拉为正) # A: 水平 F_AB + F_AD*cos(a) = 0;竖向 Ay + F_AD*sin(a) = 0 ang = np.arctan2(h, L) F_AD = -Ay / np.sin(ang) F_AB = -F_AD * np.cos(ang) print(f"杆 AD 内力 {F_AD:.2f} kN(负=压),杆 AB 内力 {F_AB:.2f} kN(正=拉)") # 节点 D:对称性,DE 水平杆内力为 0(无载对称杆) print("节点 D 对称无水平外载,水平杆 DE 内力为 0 kN——零杆") # 截面法复核:切 AB、AD、DE,取左侧,对 D 取矩可解 F_AB # sum M_D = F_AB * h - Ay * L = 0 F_AB2 = Ay * L / h print(f"截面法复核 F_AB = {F_AB2:.2f} kN,与节点法一致")

注意那个零杆:对称位置无载荷的水平杆内力为零。零杆不是废杆,它服务的是其他工况与稳定长细比(第 5 章压杆稳定会回来解释为什么受压杆尤其怕细长)。

摩擦:不定的区间解

摩擦问题的特别之处在于静摩擦力是个区间,不是定值。库仑摩擦定律给出上限:最大静摩擦等于法向反力乘摩擦系数。平衡成立的条件是所需摩擦力不超过这个上限;主动力落在摩擦角以内时,无论多大都滑不动,这叫自锁。

完整案例:斜面上一个重块,判断它在哪个倾角开始滑动。

import numpy as np # 重块 W=500 N 放在斜面上,静摩擦系数 mu=0.35,倾角 theta 从 10 到 30 度扫描 W, mu = 500.0, 0.35 print(f"{'倾角':>6} {'需要摩擦力':>10} {'最大静摩擦':>10} {'状态':>6}") for deg in range(10, 31, 5): th = np.radians(deg) # 沿斜面平衡:f = W*sin(theta);法向 N = W*cos(theta) f_need = W * np.sin(th) f_max = mu * W * np.cos(th) state = "静止" if f_need <= f_max else "滑动" print(f"{deg:5d}° {f_need:10.1f} {f_max:10.1f} {state:>6}") # 自锁条件:tan(theta) <= mu print(f"\n自锁临界角 = {np.degrees(np.arctan(mu)):.2f}°(摩擦角)")

扫描结果在 10° 到 15° 静止、20° 起滑动,临界角 19.29° 即摩擦角。螺纹自锁(千斤顶不下滑)用的就是同一条判据:螺纹升角小于摩擦角。

💡 关键直觉:无摩擦的平衡方程给出唯一解,含摩擦的平衡给出一个可行区间。题目问"摩擦力是多少"时若没给运动趋势,答案是一段范围,硬给单值反而暴露概念不清。

本节要点回顾

  • 一矩式、二矩式、三矩式互相等价,选矩心落在未知力交点上的形式最省事。
  • 负反力是方向信息:解出负值说明实际方向与假设相反,不是算错。
  • 节点法求全体、截面法问局部:两者常常交叉复核,工程审图也这么做。
  • 零杆要认得:无载对称杆内力为零,但保留它是构造需要。
  • 摩擦解是区间:上限是摩擦系数乘法向力,自锁条件是主动力落在摩擦角内。
  • 静定与超静定:未知数超过独立方程数时静力学失效,必须借助变形条件,这是第 5 章的入口。

静力学到此闭环。下一章放开"静止"假设,先不管力,纯看物体怎么动。


作者与出处
原作者: 灏天文库
来源:灏天文库
整理: 灏天文库整理
由灏天文库平台收录,内容或由平台用户上传,仅供学习交流
发布者: 作者: 灏天文库 转发
评论区 (0)
U