結構分析計算原理詳解 | 直接剛度法完整推導 | 從基礎到 FEM 應用
基本概念
什麼是桁架結構?
桁架(Truss) 是由直桿件組成的結構系統,桿件之間通過節點連接。在理想桁架中,我們假設:
- 桿件為直桿:所有桿件都是直線形狀
- 節點為鉸接:節點可以自由旋轉,不傳遞彎矩
- 荷載作用於節點:所有外力都施加在節點上
- 桿件僅承受軸力:每根桿件只有拉力或壓力,沒有彎矩和剪力
為什麼使用桁架?
桁架結構的優點:
- ✅ 材料效率高:桿件只承受軸力,充分利用材料強度
- ✅ 跨度大:可以建造大跨度結構(橋樑、屋架)
- ✅ 重量輕:相同承載能力下,重量比實心梁輕
- ✅ 施工方便:桿件可預製,現場組裝
- ✅ 計算明確:力學行為清晰,易於分析
基本術語
| 術語 | 英文 | 說明 |
|---|---|---|
| 節點 | Node | 桁架桿件的連接點 |
| 桿件 | Member/Bar | 連接兩個節點的直桿 |
| 自由度 | Degree of Freedom (DOF) | 節點可移動的方向數 |
| 約束 | Constraint | 限制節點移動的條件 |
| 反力 | Reaction | 支承對結構的支持力 |
| 內力 | Internal Force | 桿件內部的軸向力 |
| 位移 | Displacement | 節點受力後的移動量 |
理論基礎
1. 靜力平衡原理
任何靜止的結構必須滿足三個平衡條件:
二維平面結構(本系統適用):
∑Fx = 0 (X方向力平衡)
∑Fy = 0 (Y方向力平衡)
∑M = 0 (力矩平衡)
實際意義:
- 力平衡:所有作用在結構上的力,相加必須等於零
- 力矩平衡:所有力對任一點產生的力矩,相加必須等於零
2. 虎克定律(Hooke’s Law)
材料在彈性範圍內,應力與應變成正比:
σ = E × ε
其中:
- σ (Sigma):應力 (Stress),單位 MPa 或 N/mm²
- E (E-modulus):彈性模數 (Young’s Modulus),材料常數
- ε (Epsilon):應變 (Strain),無單位
常見材料的彈性模數:
| 材料 | 彈性模數 E (GPa) |
|---|---|
| 鋼材 | 200 – 210 |
| 鋁合金 | 70 – 75 |
| 混凝土 | 25 – 35 |
| 木材 | 8 – 15 |
| 鈦合金 | 110 – 120 |
3. 桿件軸向變形
單根桿件在軸向力作用下的伸長量:
δ = (F × L) / (E × A)
其中:
- δ (Delta):變形量(伸長或縮短),單位 mm
- F:軸向力,單位 N
- L:桿件長度,單位 mm
- E:彈性模數,單位 MPa
- A:截面積,單位 mm²
物理意義:
- 拉力越大 → 伸長越多(正比)
- 桿件越長 → 伸長越多(正比)
- 彈性模數越大 → 伸長越少(反比)
- 截面積越大 → 伸長越少(反比)
計算流程
本系統採用 直接剛度法(Direct Stiffness Method),這是有限元素法(FEM)的基礎。
整體流程圖
開始
↓
輸入結構資料
(節點座標、桿件連接、材料參數、邊界條件、外力)
↓
建立桿件剛度矩陣 (ke)
↓
座標轉換(局部→整體)
↓
組裝整體剛度矩陣 (K)
↓
施加邊界條件
(分離自由DOF與固定DOF)
↓
求解線性方程組
K × U = F → U = K⁻¹ × F
↓
計算節點位移 (U)
↓
計算支承反力 (R)
↓
計算桿件內力 (F)
↓
輸出結果
↓
結束
詳細步驟說明
步驟 1:建立局部剛度矩陣
每根桁架桿件在其局部座標系(沿桿件軸向)下的剛度矩陣為:
EA
k̄ = ───── × [ 1 -1]
L [-1 1]
其中:
- E:彈性模數
- A:截面積
- L:桿件長度
- EA/L:桿件的軸向剛度
步驟 2:座標轉換
將局部座標系的剛度矩陣轉換到整體座標系(X-Y平面):
k = T^T × k̄ × T
轉換矩陣 T:
T = [cos θ sin θ 0 0 ]
[ 0 0 cos θ sin θ ]
其中 θ 是桿件與 X 軸的夾角。
展開後,4×4 的整體剛度矩陣:
EA [ c² cs -c² -cs ]
k = ───── × [ cs s² -cs -s² ]
L [-c² -cs c² cs ]
[-cs -s² cs s² ]
其中:
- c = cos θ
- s = sin θ
步驟 3:組裝整體剛度矩陣
將每根桿件的剛度矩陣疊加到對應的位置:
K(全域) = Σ k(桿件i)
對於 n 個節點的結構:
- 總自由度 = 2n(每個節點有 X、Y 兩個方向)
- K 矩陣大小 = 2n × 2n
步驟 4:處理邊界條件
分離自由度和約束度:
原始方程:[K] × {U} = {F}
分解為:
[Kff Kfc] × {Uf} = {Ff}
[Kcf Kcc] {Uc} {Fc}
其中:
- f:free(自由度)
- c:constrained(約束度)
- Uf:未知的位移
- Uc = 0:已知的位移(通常為零)
- Ff:已知的外力
- Fc:未知的反力
步驟 5:求解位移
{Uf} = [Kff]⁻¹ × {Ff}
使用高斯消去法或其他數值方法求解。
步驟 6:計算反力
{Fc} = [Kcf] × {Uf}
步驟 7:計算桿件內力
對每根桿件,使用節點位移計算軸力:
EA
F = ───── × [-c -s c s] × {u1x, u1y, u2x, u2y}^T
L
數學推導
詳細推導:單根桿件剛度矩陣
假設條件
- 桿件為等截面、均質、線彈性材料
- 桿件只承受軸向力(拉或壓)
- 小變形假設
局部座標系推導
考慮一根長度為 L 的桿件,在局部座標系(x̄ 沿桿件軸向):
1. 力-位移關係
F₁ = k̄ × (u₁ - u₂)
F₂ = k̄ × (u₂ - u₁)
其中 k̄ = EA/L 為軸向剛度。
2. 矩陣形式
{F₁} EA [ 1 -1] {u₁}
{F₂} = ─── × [-1 1] {u₂}
L
整體座標系推導
1. 幾何關係
節點 1 和節點 2 在整體座標系的位移:
u₁: (u₁x, u₁y)
u₂: (u₂x, u₂y)
2. 局部位移與整體位移的關係
ū = cos θ × ux + sin θ × uy
3. 轉換矩陣
{ū₁} [c s 0 0] {u₁x}
{v̄₁} = [0 0 0 0] {u₁y}
{ū₂} [0 0 c s] {u₂x}
{v̄₂} [0 0 0 0] {u₂y}
其中 c = cos θ, s = sin θ
4. 力的轉換
{F₁x} [c 0] {F̄₁}
{F₁y} = T^T × [s 0] {V̄₁}
{F₂x} [0 c] {F̄₂}
{F₂y} [0 s] {V̄₂}
5. 最終剛度矩陣
EA [ c² cs -c² -cs ]
[k] = ─────── × [ cs s² -cs -s² ]
L [-c² -cs c² cs ]
[-cs -s² cs s² ]
矩陣性質
1. 對稱性
k = k^T
這是因為能量守恆和互易定理。
2. 奇異性(單根桿件)
det(k) = 0
單根桿件的剛度矩陣是奇異的(不可逆),因為存在剛體位移模式。
3. 正定性(整體結構)
U^T × K × U > 0 (對所有非零位移 U)
在施加適當約束後,整體剛度矩陣是正定的。
實例解說
範例 1:簡單三角形桁架
問題描述
節點2 (10 kN ↓)
/\
/ \
/ \
節點0────節點1
🔺固定 🔺滾動
結構參數:
- 節點 0:(0, 0),固定支承(固定 X 和 Y)
- 節點 1:(2000, 0),滾動支承(固定 Y)
- 節點 2:(1000, 1000),受力點
- 外力:節點 2 受 10 kN 向下力(Fy = -10000 N)
- 所有桿件:E = 200 GPa,A = 100 mm²
步驟 1:計算桿件參數
桿件 0(節點0→節點2):
長度 L₀ = √[(1000-0)² + (1000-0)²] = 1414.2 mm
角度 θ₀ = atan(1000/1000) = 45°
cos θ₀ = 0.707
sin θ₀ = 0.707
EA/L₀ = (200,000 × 100) / 1414.2 = 14142.1 N/mm
桿件 1(節點1→節點2):
長度 L₁ = √[(1000-2000)² + (1000-0)²] = 1414.2 mm
角度 θ₁ = atan(1000/-1000) = 135°
cos θ₁ = -0.707
sin θ₁ = 0.707
EA/L₁ = 14142.1 N/mm
桿件 2(節點0→節點1):
長度 L₂ = 2000 mm
角度 θ₂ = 0°
cos θ₂ = 1
sin θ₂ = 0
EA/L₂ = 10000 N/mm
步驟 2:建立整體剛度矩陣
整體剛度矩陣 K 為 6×6(3個節點 × 2個方向):
K = [K₀₀ K₀₁ K₀₂]
[K₁₀ K₁₁ K₁₂]
[K₂₀ K₂₁ K₂₂]
其中每個子矩陣為 2×2。
組裝過程(簡化說明):
桁架桿件 0 貢獻到位置 (0,0), (0,2), (2,0), (2,2) 桁架桿件 1 貢獻到位置 (1,1), (1,2), (2,1), (2,2) 桁架桿件 2 貢獻到位置 (0,0), (0,1), (1,0), (1,1)
步驟 3:施加邊界條件
約束條件:
- DOF 0 (節點0-X):固定 = 0
- DOF 1 (節點0-Y):固定 = 0
- DOF 2 (節點1-X):自由
- DOF 3 (節點1-Y):固定 = 0
- DOF 4 (節點2-X):自由
- DOF 5 (節點2-Y):自由
外力向量:
F = {0, 0, 0, 0, 0, -10000}^T
自由DOF: 2, 4, 5 固定DOF: 0, 1, 3
步驟 4:求解方程
提取自由度子矩陣 Kff(3×3)和力向量 Ff(3×1):
Kff × Uf = Ff
Uf = Kff⁻¹ × Ff
步驟 5:計算結果
節點位移(典型值):
節點 0: Δx = 0 mm, Δy = 0 mm (固定)
節點 1: Δx = 0.354 mm, Δy = 0 mm (Y固定)
節點 2: Δx = 0.177 mm, Δy = -0.707 mm (自由)
支承反力:
節點 0: Rx = -5000 N ← (向左)
Ry = 5000 N ↑ (向上)
節點 1: Ry = 5000 N ↑ (向上)
驗證:Ry總和 = 5000 + 5000 = 10000 N ✓(平衡外力)
桿件內力:
桿件 0: F = 7071 N (拉力)
桿件 1: F = 7071 N (拉力)
桿件 2: F = -5000 N (壓力)
應力:
桿件 0: σ = 7071/100 = 70.71 MPa
桿件 1: σ = 7071/100 = 70.71 MPa
桿件 2: σ = 5000/100 = 50.00 MPa
驗證計算
1. 力平衡(節點2):
∑Fx = F₀×cos45° + F₁×cos135° + 0 = 0
= 7071×0.707 + 7071×(-0.707) = 0 ✓
∑Fy = F₀×sin45° + F₁×sin135° + (-10000) = 0
= 7071×0.707 + 7071×0.707 - 10000 = 0 ✓
2. 整體平衡:
∑Fx = -5000 + 0 + 0 = -5000 (無外力) ✗
等等...應該檢查所有外力
實際上,由於對稱性:
- 兩個斜桿受力相同(7071 N)
- 兩個支承反力相同(5000 N)
- 底部桿件受壓(5000 N)
範例 2:不穩定結構識別
問題:兩桿系統
節點1───節點2
│
節點0(自由)
為什麼不穩定?
- 約束不足:
- 總DOF = 3 × 2 = 6
- 約束數 = 0
- 自由度 = 6(可以剛體移動和旋轉)
- 矩陣奇異: 整體剛度矩陣 K 的行列式 = 0 無法求逆矩陣
- 解決方法: 至少需要 3 個約束來固定平面剛體 (例如:固定一個節點的 X、Y,再固定另一個節點的 Y)
常見問題
Q1: 為什麼需要至少 3 個約束?
答: 在二維平面中,剛體有 3 個自由度:
- 沿 X 方向平移
- 沿 Y 方向平移
- 繞某點旋轉
因此需要至少 3 個約束來完全固定結構。
典型配置:
- 1 個固定支承(2個約束)+ 1個滾動支承(1個約束)= 3個約束 ✓
- 2 個固定支承 = 4個約束(過度約束,但可行)✓
Q2: 什麼是「矩陣奇異」?
答: 矩陣奇異表示矩陣不可逆(determinant = 0)。
物理意義:
- 結構可以無限制移動(剛體運動)
- 沒有唯一解
- 結構不穩定
數學意義:
K × U = F
如果 det(K) = 0,則:
- 當 F ≠ 0 時,可能無解
- 當 F = 0 時,有無窮多解
Q3: 拉力和壓力有什麼區別?
答:
| 特性 | 拉力 | 壓力 |
|---|---|---|
| 符號 | 正 (+) | 負 (-) |
| 作用 | 拉伸桿件 | 壓縮桿件 |
| 破壞模式 | 材料拉斷 | 桿件挫屈 |
| 設計考量 | 抗拉強度 | 細長比、挫屈 |
重要: 壓力桿件需要特別注意挫屈問題!
Q4: 彈性模數 E 代表什麼?
答: 彈性模數 E 表示材料的「剛度」或「抵抗變形的能力」。
- E 大 → 材料硬(鋼材 E = 200 GPa)
- E 小 → 材料軟(橡膠 E ≈ 0.01 GPa)
物理意義:
E = σ / ε = 應力 / 應變
在相同應力下,E 越大,變形越小。
Q5: 截面積 A 如何影響結果?
答: 截面積 A 影響兩個方面:
1. 剛度(EA/L):
A 增加 → 剛度增加 → 位移減小
2. 應力(σ = F/A):
A 增加 → 應力減小 → 更安全
設計原則:
- 受力大的桿件 → 用較大截面積
- 位移要求嚴格 → 增加所有桿件截面積
Q6: 如何判斷計算結果是否正確?
答: 使用以下檢查方法:
1. 力平衡檢查:
∑反力 = ∑外力
2. 位移合理性:
典型值:δ < L/300
3. 應力檢查:
σ < 材料許用應力
鋼材:σ < 140-180 MPa(安全係數約1.5)
4. 對稱性: 對稱結構 + 對稱荷載 → 對稱結果
5. 趨勢檢查:
- 增加外力 → 位移增大 ✓
- 增加截面 → 位移減小 ✓
- 增加彈性模數 → 位移減小 ✓
Q7: 系統如何處理單位?
答: 系統採用一致的單位系統:
| 物理量 | 輸入單位 | 內部計算單位 | 輸出單位 |
|---|---|---|---|
| 長度 | mm | mm | mm |
| 力 | N | N | N |
| 彈性模數 | GPa | MPa | GPa |
| 截面積 | mm² | mm² | mm² |
| 應力 | – | MPa | MPa |
注意: E 從 GPa 轉換為 MPa(×1000)
Q8: 什麼情況下結果不準確?
答: 以下情況下,結果可能不可靠:
1. 違反基本假設:
- 桿件有顯著彎曲(不是純軸力)
- 節點不是鉸接(實際焊接有剛度)
- 大變形(小變形假設失效)
2. 數值問題:
- 節點座標過於接近(數值誤差)
- 桿件過短或過長(剛度差異過大)
- 截面積差異過大
3. 建模錯誤:
- 支承條件設置錯誤
- 外力方向錯誤
- 材料參數錯誤
建議:
- 始終進行工程判斷
- 對比手算或其他軟體結果
- 考慮安全係數