研究筆記
多自由度機械臂:拉格朗日動力學、控制與數值驗證
由質量矩陣與科氏項建立機械臂模型,比較數值積分及控制器,並以能量與追蹤誤差驗證。
2025年10月5日 · 約 1 分鐘閱讀
封存文章
本文是模擬框架,不是經實體機械臂辨識及安全認證的控制器。
對 n 自由度剛體機械臂,標準操縱器方程為
M(q)q¨+C(q,q˙)q˙+g(q)+f(q˙)=τ.
M(q) 必須對稱正定;C 的選取應滿足 M˙−2C 反對稱,這提供重要的能量一致性檢查。
拉格朗日建模
由每個連桿的動能 T 與位能 V 寫出
dtd∂q˙i∂L−∂qi∂L=τi,L=T−V.
實作時可由符號推導、自動微分或遞歸 Newton–Euler 法產生項目。任何方法都要以隨機姿態測試矩陣維度、對稱性和重力方向。
數值積分
狀態 x=(q,q˙) 滿足
x˙=[q˙M−1(τ−Cq˙−g−f)].
Euler 法適合教學但對剛性接觸與高增益控制容易不穩。RK4 可提高固定步長精度;長時間無阻尼模擬則可考慮辛積分。比較方法時必須用同一輸入與時間網格,並做步長收斂。
控制器
關節 PID 為
τ=Kpe+Ki∫edt+Kde˙.
計算力矩控制加入模型補償:
τ=M(q)(q¨d+Kde˙+Kpe)+C(q,q˙)q˙+g(q).
後者在模型準確時追蹤較好,但對質量、摩擦與未建模柔性更敏感。控制比較應報告 RMS 誤差、峰值扭矩、能耗、超調及飽和時間,而非只看一張軌跡圖。
能量檢查
無阻尼、無輸入時
E=T+V
應近似守恆;有輸入和阻尼時應滿足功率帳
E(t)−E(0)≈∫0t(τ⊤q˙−q˙⊤f)dt.
這個殘差常能抓出座標、符號及積分錯誤。
由模擬到實機
下一步包括參數辨識、感測噪聲、延遲、關節限位、碰撞與扭矩限制。控制器先在軟件及硬件在環測試,再以低速低扭矩逐步上機;任何自適應或學習控制亦需獨立安全層。
參考資料
- Spong, Hutchinson, and Vidyasagar, Robot Modeling and Control.
- Siciliano et al., Robotics: Modelling, Planning and Control.
- Hairer, Lubich, and Wanner, Geometric Numerical Integration.