大華科技大學
電機與電子工程系碩士班
碩士論文
旋轉式倒單擺系統之非線性控制
設計研究
Study of Nonlinear Control Design for
A Rotary Inverted Pendulum System
研 究 生:范 銘 峰
指導教授:謝 劍 書 博 士
旋轉式倒單擺系統之非線性控制設計研究
Study of Nonlinear Control Design for A
Rotary Inverted Pendulum System
研
究 生:范銘峰
Student:Ming-Feng Fan
指導教授:謝劍書
博士 Advisor:Dr. Chien-Shu Hsieh
大華科技大學
電機與電子工程系碩士班
碩士論文
A Thesis
Submitted to Department of Electrical and Electronic Engineering College of Engineering and Design
Ta Hwa University of Science and Technology in Partial Fulfillment of the Requirements
for the Degree of Master of Science
in
Electrical and Electronic Engineering June 2015
Hsinchu, Taiwan, Republic of China.
摘要
本論文針對一旋轉式倒單擺系統提出一有效的非線性控制方法,以 改善利用角度近似法所得之非時變 LQR 最佳線性控制之精度。本論文的 主要目的則在探討利用一些非線性系統理論,針對一 ROTPEN 實驗機台嘗 試設計較線性控制更精準之控制法則。首先,我們推導 ROTPEN 實驗機台 之系統模型,並嘗試探討利用非時變線性 LQR 設計方法所獲得之控制效果及其潛在問題;接著嘗試利用 SDRE (State-Dependent Riccati Equation) 控制法及輸入-狀態回授線性化 (Input-state feedback linearization) 控制
法來精進線性控制之效果。另外,本論文也利用 SDRE 設計概念,來簡化 傳統回授線性化控制法則之推導,進一步提出簡化型時變及非時變回授 線性化控制器設計結果,以降低回授線性化控制所需之複雜計算度。為 驗證所提出控制器之有效性,本論文使用MATLAB 軟體來做模擬與測試。 最後,藉由 LabVIEW 圖控程式之實現,本論文達成以實體控制 ROTPEN 機台之目的。 關鍵字:倒單擺系統、非線性系統、LQR 控制法、SDRE 控制法、回授 線性化控制法、MATLAB、LabVIEW。 I
Abstract
This thesis proposes an effective nonlinear control method for a rotary inverted pendulum system in order to improve the accuracy of using the time-invariant LQR optimal linear control, which is obtained by using angle approximations in the obtained nonlinear system model. Thus, the main objective of this thesis is to explore the application of nonlinear system theories to a ROTPEN experimental machine (ROTPENEM), trying to develop a more accurate control law than that of the linear control. First, we derive the system model of the ROTPENEM, and try to explore the control effects and potential problems of applying the time-invariant LQR design. Then, we try to employ the SDRE (State-Dependent Riccati Equation) control and the Input-state feedback linearization control to improve the control performance of the aforementioned linear control. Furthermore, based on the concept of the SDRE, this thesis also proposes a compact design method of the conventional feedback linearization control in order to reduce its computational complexity. In the sequel, compact time-varying and time-invariant feedback linearization controller designs are proposed. To verify the effectiveness of the proposed results, this thesis uses MATLAB to conduct the simulation and verification. Finally, through LabVIEW programming and experiment setup, this thesis fulfills the goal of real and satisfactory control of the ROTPENEM.
Keywords: Inverted pendulum system, Nonlinear system, LQR, SDRE, Feedback linearization control, MATLAB, LabVIEW.
誌謝
非常感謝我的指導教授謝劍書博士,多次在我做論文方向走偏時即 時的將我拉回來,並在我不知所措時指導我方向,而每一次的會議中總 是耐心的解惑我的問題,讓我學習到非常多的東西。 感謝系主任盧豐彰教授,在研究所一開學時就告知我們研究生要養 成的核心能力,讓脫離學校快 10 年的我有了一個明確的方向,使得我能 轉換心態,讓我遇到難題時能以挑戰的心態快樂學習。也感謝開學一開 始時,陳國堂教授教導我們如何做簡報和上台報告的能力,讓我在職場 中受益良多。 感謝教過我的每一位老師:謝振中教授、謝劍書教授、鄭時龍教授、 田麗文教授、徐聖哲教授、韋孟育教授、顧喬祺教授,謝謝你們上課用 心教導的付出,讓我讀研究所的過程中受益良多。 再者感謝我的家人和妻子,在做研究的這些日子,有你們的包容讓 我能無後顧之憂的好好學習,並在我遇到困難時鼓勵我。另外也感謝我 的朋友楊文琮博士,多次在假日還抽空教我一些控制理論。 最後感謝口試委員謝劍書教授、鄭時龍教授及徐勝均教授能在百忙 中抽空當口試老師,給予我論文撰寫之最大的指導。 III目錄
中文摘要 ... I 英文摘要 ... II 誌謝 ... III 目錄 ... IV 表目錄 ... VII 圖目錄 ... VIII 第一章 緒論 ... 1 1.1. 研究動機與背景 ... 1 1.2. 研究目的 ... 2 1.3. 文獻回顧 ... 2 1.4. 研究方法 ... 4 1.5. 論文架構 ... 4 第二章 基礎理論介紹 ... 6 2.1. 拉格朗日方程式 ... 6 2.2. 線性二次型調整器(LQR) ... 9 2.3. SDC 設計 ... 11 2.4. 輸入-狀態回授線性化設計 ... 12 第三章 旋轉式倒單擺系統 ... 16 3.1. 系統架構 ... 16 3.1.1. 硬體規格 ... 17 3.1.2. 軟體規格 ... 20 3.2. 系統模型 ... 22 IV3.2.1. 運動學 ... 23 3.2.2. 系統能量 ... 24 3.2.3. 尤拉-拉格朗日運動方程式 ... 25 3.2.4. 系統動力學模型 ... 26 3.2.5. 狀態空間模型 ... 27 第四章 旋轉式倒單擺控制器設計 ... 28 4.1. 衡點狀態空間模型... 28 4.2. 平衡控制器設計 ... 30 4.2.1. 時變 LQR 控制器設計 ... 30 4.2.2. 非時變 LQR 控制器設計 ... 31 4.3. 擺起控制器設計 ... 32 4.4. 擺起/平衡控制器設計... 34 4.5. 簡化型回授線性化控制器設計 ... 39 第五章 模擬結果 ... 43 5.1. 旋轉式倒單擺系統不穩定性模擬 ... 43 5.2. 平衡控制器效能驗證 ... 45 5.2.1. 線性非時變 LQR 控制器效能驗證 ... 46 5.2.2. 線性時變 LQR(SDC)控制器效能驗證 ... 48 5.2.3. 線性非時變 LQR 補償控制器效能驗證 ... 50 5.3. 擺起控制器效能驗證 ... 52 5.4. 擺起/平衡控制器效能驗證 ... 53 5.4.1. 非時變 LQR 控制器效能驗證... 54 5.4.2. 時變回授線性化控制器效能驗證 ... 56 V
5.4.3. 非時變回授線性化控制器效能驗證 ... 58 5.4.4. 簡化型時變回授線性化控制器效能驗證 ... 59 5.5. 模擬結果討論 ... 60 5.5.1. 平衡控制器結果討論 ... 60 5.5.2. 擺起/平衡控制器結果討論 ... 61 第六章 實驗結果 ... 63 6.1. 旋轉式倒單擺系統之 LabVIEW 程式設計 ... 63 6.1.1. 程式設計流程圖 ... 63 6.1.2. LabVIEW 人機介面 ... 63 6.1.3. 主程式方塊圖 ... 65 6.1.4. 擺起控制器方塊圖 ... 66 6.1.5. LQR 平衡控制器方塊圖 ... 67 6.1.6. 回授線性化平衡控制器方塊圖 ... 68 6.2. 旋轉式倒單擺系統的操作介面 ... 71 6.3. 擺起/平衡控制器之實際驗證 ... 73 6.3.1. 擺起/LQR 平衡控制 ... 73 6.3.2. 擺起/簡化型回授線性化平衡控制 ... 78 6.4. 實驗結果討論 ... 80 第七章 結論與未來研究方向 ... 82 7.1. 結論 ... 82 7.2. 未來研究方向 ... 83 參考文獻 ... 85 VI
表目錄
表 3.1 旋轉式倒單系統參數 ... 19 表 5.1 平衡控制器效能 ... 60 表 5.2 擺起/平衡控制器控制器效能 ... 62 表 6.1 非時變回授線性化控制器之方塊圖與公式關係 ... 69 表 6.2 簡化型時變回授線性化控制器之方塊圖與公式關係 ... 70 表 6.3 擺起/平衡控制器比較 ... 81 VII圖目錄
圖 1.1 旋轉式倒單擺系統 ... 2 圖 2.1 LQR 閉迴路控制系統 ... 11 圖 3.1 系統架構示意圖 ... 16 圖 3.2 NI ELVIS I ... 17 圖 3.3 旋轉式倒單擺模組 ... 18 圖 3.4 NI PCI-6251 ... 20 圖 3.5 LabVIEW 虛擬儀控介面圖(來源:NI[22]) ... 21 圖 3.6 MATLAB 示意圖 ... 22 圖 3.7 旋轉式倒單擺系統示意圖 ... 23 圖 4.1 擺起/平衡閉迴路控制系統 ... 34 圖 5.1 無施加控制(𝛼𝛼1)之旋轉式倒單擺系統反應 ... 44 圖 5.2 無施加控制(𝛼𝛼2)之旋轉式倒單擺系統反應 ... 44 圖 5.3 平衡控制器的有效工作範圍示意圖 ... 45 圖 5.4 線性非時變 LQR 控制器(𝜀𝜀1)之效能驗證 ... 46 圖 5.5 線性非時變 LQR 控制器(𝜀𝜀2)之效能驗證 ... 46 圖 5.6 線性非時變 LQR 控制器(𝜀𝜀3)之效能驗證 ... 47 圖 5.7 線性時變 LQR(SDC)平衡控制器(𝜀𝜀1)之效能驗證 ... 48 圖 5.8 線性時變 LQR(SDC)平衡控制器(𝜀𝜀2)之效能驗證 ... 49 圖 5.9 線性時變 LQR(SDC)平衡控制器(𝜀𝜀3)之效能驗證 ... 49 圖 5.10 線性非時變 LQR 補償控制器(𝜀𝜀1)之效能驗證 ... 50 圖 5.11 線性非時變 LQR 補償控制器(𝜀𝜀2)之效能驗證 ... 51 圖 5.12 線性非時變 LQR 補償控制器(𝜀𝜀3)之效能驗證 ... 51 VIII圖 5.13 施加擺起控制(u1)之效能驗證 ... 52 圖 5.14 施加擺起控制(u2)之效能驗證 ... 53 圖 5.15 非時變 LQR 控制器(Q 1)之效能驗證 ... 55 圖 5.16 非時變 LQR 控制器(Q2)之效能驗證 ... 55 圖 5.17 非時變 LQR 控制器(Q3)之效能驗證 ... 56 圖 5.18 時變回授線性化控制器之效能驗證 ... 57 圖 5.19 時變回授線性化控制器之效能驗證(放大) ... 57 圖 5.20 非時變回授線性化控制器之效能驗證 ... 58 圖 5.21 非時變回授線性化控制器之效能驗證(放大) ... 58 圖 5.22 簡化型時變回授線性化控制器之效能驗證 ... 59 圖 5.23 簡化型時變回授線性化控制器之效能驗證(放大) ... 60 圖 6.1 旋轉式倒單擺系統之程式流程圖設計 ... 64 圖 6.2 旋轉式倒單擺系統程式之人機介面圖 ... 64 圖 6.3 旋轉式倒單擺系統之主程式方塊圖之(1) ... 65 圖 6.4 旋轉式倒單擺系統程式之程式方塊圖(2) ... 65 圖 6.5 擺起控制器程式方塊圖 ... 66 圖 6.6 計算 LQR 控制增益 K 之程式方塊圖 ... 67 圖 6.7 線性非時變 LQR 控制器之程式方塊圖 ... 67 圖 6.8 計算回授線性化固定參數之程式方塊圖 ... 68 圖 6.9 簡化時變回授線性化控制器之程式方塊圖 ... 68 圖 6.10 非時變回授線性化控制器之程式方塊圖 ... 69 圖 6.11 旋轉式倒單擺系統的操作介面 ... 71 圖 6.12 操作介面的控制區 ... 72 IX
圖 6.13 擺起(u1)/LQR 平衡控制器之一次平衡成功 ... 74 圖 6.14 擺起(u1)/LQR 平衡控制器之第二次平衡成功 ... 75 圖 6.15 擺起(u1)/LQR 平衡控制器之第三次平衡後震盪 ... 75 圖 6.16 擺起(u1)/LQR 平衡控制器之平衡失敗 ... 76 圖 6.17 擺起(u2)/LQR 平衡控制器之平衡成功 ... 77 圖 6.18 擺起(Q2)/LQR 平衡控制器 ... 78 圖 6.19 擺起/簡化型回授線性化平衡控制器(K1) ... 79 圖 6.20 擺起/簡化型回授線性化平衡控制器(K2) ... 79 圖 6.21 擺起/簡化型回授線性化平衡控制器(K3) ... 80 X
第一章 緒論
1.1. 研究動機與背景 隨著科技的進步以及學術的發展,特別是近幾年來電腦計算能力大 幅提升,控制不再像以往那樣昂貴和難以設計,因此控制的應用在各行 各業中迅速擴大,如航太科技、風力發電、汽車、交通運輸與製造業等 等,控制工程都占有非常重要的一環,且在未來的各行各業中,人們必 然會想用更少的人力、更高效率的方法來做事,而一個優良的控制系統 便可幫公司創造高品質、低成本以及較低的危安事件,因此一個優良的 控制系統是值得深入探討的。倒單擺系統 (Inverted Pendulum System)為一不穩定 (unstable)之非 線性系統 (nonlinear),又因為系統架構簡單,所以常用來做典型的控制
實驗以及驗證各種控制理論,一般常見的倒單擺系統可分為旋轉式與直線
式兩種,本文是以旋轉式倒單擺系統(如圖 1.1),使用了 QUANSER 公司 [1]的 ROTPEN (NI-ELVIS Trainer Rotary Inverted Pendulum)機台。
QUANSER 公司是一家專門為理工教育者和研究人員設計強大且高 精密的控制系統設備公司,並與美國國家儀器公司(NI)一同發展合作,在 ROTPEN 機 台 的 量 測 儀 器 與 軟 體 均 是 使 用 NI 公 司 的 硬 體 設 備 和 LabVIEW 圖控軟體來撰寫,在研究控制實驗上帶來高度的整合與便利性。 下圖是旋轉式倒單擺機台的實際拍攝圖。 1
圖1.1 旋轉式倒單擺系統
1.2. 研究目的
本論文藉由典型的控制實驗機台之旋轉式倒單擺系統來探討利用一 些非線性系統理論,嘗試設計較線性控制更精準之控制方法。藉由模擬 分析非時變線性 LQR (Linear-Quadratic Regulator)設計方法所獲得之控制 效果及其潛在問題,並嘗試利用 SDRE (State-Dependent Riccati Equation) 及回授線性化控制方法的特點來精進線性控制之效果,最後將所設計的 控制器實現在 ROTPEN 機台。
1.3. 文獻回顧
由於倒單擺系統是典型的控制題目,所以相關的研究非常多,在國 外以旋轉式倒單擺系統為例,Kim and Lee 使用模糊控制[2],Katsuhisa Furuta[3]使用結構變數控制,Astrom and Furuta[4]以基礎能量實現單擺 的擺起控制,Krishen and Becerra[5]使用 LQR 控制實現在單擺倒過來時 的平衡控制。
在國內以旋轉式倒單擺系統為例,羅士堯[6]是以基礎能量做擺起控
制,並將系統的非線性模型在平衡點附近做泰勒展開以求得線性化模型, 分別以 LQR 控制法、極點配置法以及 PID 控制三種方式設計平衡控制器, 並利用 LabVIEW 和 Simulink 軟體做模擬分析與比較,最後得知由 LQR 控制法所做出來的平衡控制器比極點配置法和 PID 控制器佳,而傳統的 PID 控制甚至不能使倒單擺達到平衡狀態。 莊宜達[7]同樣是以基礎能量做擺起控制,以 LQR 控制法做平衡控制, 並額外設計 PD 控制器來追蹤旋轉臂的運動軌跡,分析旋轉臂在來回運動 下,倒單擺是否能持續保持平衡,最後證實由 LQR 控制法所設計的平衡 控制器能讓旋轉臂在持續的運動中仍是能讓倒單擺保持平衡。 文獻[5]-[7]在解決倒單擺平衡時,均是先將非線性模組做線性近似來 使用 LQR 控制法設計控制器,本論文參考 Tayfun Çimen[8]所提出的 SDRE 做為解決非線性控制問題的一部分。應用 SDRE 的特點使用在時變 模組上,在系統運作時,將每一時間點的相關係數代入非線性方程式中, 以線性狀態呈現,以改善利用近似法所得之非時變 LQR 最佳線性控制之 精度。 文 獻 [9]-[14] 所 使 用 的 輸 入 - 狀 態 回 授 線 性 化 控 制 法 (Input-State Feedback Linearization)亦是解決非線性控制的一個很好方法,其作法是利 用輸入狀態的回授,消除系統的非線性部分。其中,張剛維[10]使用回授 線性化控制法被應用在車輛轉向系統控制中得到很好的效果,同時在模 擬上採用四階朗基-庫塔法 (Fourth-order Runge-Kutta method)做為微分方 程式求解之模擬工具,在分析上得到很大的便利性。
本論文的平衡控制器設計是使用文獻[5]-[7]所用的 LQR 控制法、文 獻[8]的 SDRE 控制法以及文獻[9]-[14]所使用的回授線性化控制法,同時
探討各個控制法所在的潛在問題,並且在模擬上使用文獻[10]中所用的四 階朗基-庫塔法做為微分方程式求解之模擬工具,來評估各個控制法的優 缺點。
1.4. 研究方法
本 論 文 首 先 以 拉 格 朗 日 方 程 式 (Euler-Lagrange Equation) 推 導 ROTPEN 實驗機台之系統模型,以李雅普诺夫函数 (Lyapunov Function) 設計擺起控制器,使用 LQR 控制法、SDC 控制法及回授線性化控制法來 設計三種不同類型的倒單擺平衡控制器。在模擬驗證中使用工程計算軟 體 MATLAB 來模擬各個控制器應用在旋轉式倒單擺系統之結果,並對其 控制效能做比較與分析。最後再將所設計出的控制器透過 LabVIEW 圖控 程式實作在 QUANSER 公司的 ROTPEN 機台上,以達到實體控制 ROTPEN 機台之目的。 1.5. 論文架構 本論文共分為七個章節,分別為: 第一章為緒論。 第二章為基礎理論介紹,介紹拉格朗日方程式、線性二次調整器 (LQR)、SDC 設計以及輸入-狀態回授線性化設計。 第三章為系統架構與推導旋轉式倒單擺系統模型。 第四章為旋轉倒單擺控制器設計,分別設計平衡控制器、擺起控制 器、擺起/平衡控制器以及簡化型回授線性化控制器。 第五章為模擬結果,使用 MATLAB 模擬各個擺起、平衡以及擺起/ 平衡控制器,並且做分析比較。 4
第六章為實驗結果,透過 LabVIEW 圖控程式,將所設計的控制器實 現在 ROTPEN 機台上。
第七章為結論與未來研究方向。
第二章 基礎理論介紹
2.1. 拉格朗日方程式 拉格朗日方程式[15],是由约瑟夫·路易斯·拉格朗日而命名的,是 拉格朗日力學的主要方程式,主要是用來描述物體的運動,特別是適 用於理論物理的研究,而拉格朗日方程式的功能與牛頓力學中的牛頓 第二運動定律相同,但與之不同的是,拉格朗日不會被任何座標系統 所捆綁住,拉格朗日表述是使用廣義座標來描述系統的空間參數,所 涉及的物理量是動能與位能,這些物理量的值不會因為廣義座標的選 擇而改變,因此對於系統的種種約束,我們便可以選擇一組最合適的 廣義座標來計算問題的解答。下面,我們將簡述拉格朗日方程式之設 計步驟。 假設一物理系統符合完整系統與單演系統的要求,則拉格朗日方 程式如下: 0 = ∂ ∂ − ∂ ∂ q L q L dt d (2.1) 其中L(𝑞𝑞, 𝑞𝑞̇, 𝑡𝑡)是拉格朗日量、𝑞𝑞 = (𝑞𝑞1, 𝑞𝑞2, … , 𝑞𝑞𝑛𝑛)是廣義坐標,且是時間 t 的函數、𝑞𝑞̇ = (𝑞𝑞̇1, 𝑞𝑞̇2, … , 𝑞𝑞̇𝑛𝑛)是廣義速度。一般來說,有三種方法可以推導 出拉格朗日方程式,第一種是用達朗伯特原理推導出拉格朗日方程式, 第二種是從哈密頓原理推導出拉格朗日方程式,第三種也是最簡明的 方法是可以用歐拉-拉格朗日方程式來推導。下面,我們將利用第三種 方法來推導拉格朗日方程式。 首先,設定變數: 6)) ( ),..., ( 2 ), ( 1 ( x N y x y x y y = (2.2) )) ( ),..., ( 2 ), ( 1 ( x N y x y x y y = (2.3) ) ), ( ),..., ( 2 ), ( 1 ), ( ),..., ( 2 ), ( 1 ( ) , , ( x x N y x y x y x N y x y x y f x y y f = (2.4) 若𝑦𝑦(𝑥𝑥) =∈ (𝐶𝐶1[a, 𝑏𝑏])𝑁𝑁使泛函𝐽𝐽(𝑌𝑌) = ∫ 𝑓𝑓(𝑦𝑦, 𝑦𝑦̇, 𝑥𝑥)𝑎𝑎 𝑏𝑏 取得局部極值時,則在區間 (a, 𝑏𝑏)內對於所有的𝑖𝑖 = 1,2, … , 𝑁𝑁,歐拉-拉格朗日方程式成立如下:
0
)
,
,
(
)
,
,
(
=
∂
∂
−
∂
∂
x
y
y
f
i
y
x
y
y
f
i
y
dx
d
(2.5) 假設不相依變數 x 為時間 t 的函數,函數𝑦𝑦𝑖𝑖為廣義坐標𝑞𝑞𝑖𝑖,泛函𝑓𝑓(𝑦𝑦, 𝑦𝑦̇, 𝑥𝑥) 為拉格朗日量𝐿𝐿(𝑦𝑦, 𝑦𝑦̇, 𝑥𝑥),則我們可得到拉格朗日方程式如下: 0 = ∂ ∂ − ∂ ∂ q L q L dt d (2.6) 拉格朗日量定義為動能減去位能,在(2.6)式推導中,我們假設系 統必須是一個完整系統(廣義坐標互不相依)。如果是一個非完整系統, 我們可得到下面的約束方程式: n i q q i g ( , )=0; =1,2,3,...., (2.7) 我們稱此系統為半完整系統。一個半完整系統可以用拉格朗日形式論 來 分 析 。 而 分 析 半 完 整 系 統 必 須 使 用 到 拉 格 朗 日 乘 數 (Lagrange Multiplier)λ𝑖𝑖,如下: 0 1 = ∑ = gi n i iλ
(2.8) 其中λ𝑖𝑖 = λ𝑖𝑖(𝑞𝑞, 𝑞𝑞̇, 𝑡𝑡)為未知的函數,由於具有 n 個相依的廣義坐標,所以 我們不能直接將泛函𝑓𝑓(𝑦𝑦, 𝑦𝑦̇, 𝑥𝑥)轉換為拉格朗日量 L,我們需要加入拉格 7朗日乘數,並且將泛函𝑓𝑓(𝑦𝑦, 𝑦𝑦̇, 𝑥𝑥)轉換為𝐿𝐿 + ∑𝑛𝑛𝑖𝑖=1𝜆𝜆𝑖𝑖𝑔𝑔𝑖𝑖,之後我們可以得 到拉格朗日廣義力方程式,如下: F q L q L dt d = ∂ ∂ − ∂ ∂ (2.9) 其中 F 是廣義力,定義如下: ∑ = − ∑ = ∂ ∂ = i g n i i dt d i g n i i q F 1 ) 1 ( λ λ (2.10) 接著,我們利用 N 個廣義力運動方程式加上 n 個約束方程式,便可求 得 N 個未知廣義坐標和 n 個拉格朗日乘數。 最後,我們舉一個實際的例子(自由落體運動)來說明拉格朗日方程 式的應用。考慮一個粒子從靜止狀態到自由下落時,由於地心引力的 作用,應用牛頓的第二定律於此粒子時,我們可得到下面的運動方程 式: g x= (2.11) 如上,x 坐標垂直於地面,由初始點(原點)指向地面。以下,我們將使 用拉格朗日形式來推導(2.11)式。 首先,我們可分別定義動能 T 及位能 V 如下: mv T 2 1 = (2.12) mgx V =− (2.13) 因為拉格朗日量定義為動能減去位能,因此拉格朗日量 L 如下: mgx x m V T L= − = 2 + 2 1 (2.14) 8
由上式代入拉格朗日方程式,我們可以得到: mg dt x d m x L x L dt d − = ∂ ∂ − ∂ ∂ = 0 (2.15) 因此,我們可得運動方程式如下:
g
x
=
(2.16) 在此例子中我們可以看出來,使用牛頓的方法所得到的運動方程 與使用拉格朗日的方法相同。 2.2. 線性二次型調整器(LQR) LQR 為線性二次型調節器[16]。LQR 理論是現代控制理論中發展 最早也是最成熟的一種狀態空間設計法。LQR 是指設計出的最佳狀態 反饋控制器 K 要使二次型目標函數 J 取最小值,而 K 是由權矩陣 Q 與 R 來決定,因此 Q、R 的選擇就很重要。 對於某一類之耦合線性非時變多輸入多輸出系統而言,我們可以 根據不同系統的相對階數發展系統化的方法來調整 P/PI/PID 控制增益, 藉由線性二次調整器技術,控制代價或是成本可以加入控制器設計的 過程中一併考量。由於 LQR 本身具備有強健性,利用 LQR 來設計 PID 控制器參數,將有助於改善 PID 控制器的性能。在下面,我們將簡述 LQR 之設計步驟。首先,考慮一線性非時變動態隨機系統狀態方程表 式如下: Dw Bu Ax x= + + (2.17) Cx y= (2.18)此處 x 為狀態向量,u 為控制輸入,w 為程序雜訊,y 為輸出,A、B、
C、D 表示常數矩陣。其次,應用線性二次高斯方法進行最佳控制,可 選取最佳調節器行為的代價函數如下:
( )
( )
( ) ( )
∫∞ + =E 0 x t TQx t uT t Ru t dt V (2.19)其中:𝐸𝐸[∙]表示均值 (Mean)運算子,Q 為半正定 (Positive Smi-Definite) 矩陣,R 為正定 (Positive Definite)矩陣。若要使得(2.19)式在相對控制 輸入訊號 u 下有最小代價函數值,下式必須滿足: 0 1 + + = − − A P P A P B BF P E T T (2.20) 上式即為代數 Riccati 方程式(2.20)之穩態解。因此,最佳狀態回授增 益 K 可由下式求得: P B F x K = −1 T (2.21) 另外,若要設計一個含有雜訊前饋之最佳調節器,其前饋增益 Kf 則可由 Kx求得如下:
[
]
−1ψ = Kx I II Kf (2.22) 其中𝛪𝛪𝛪𝛪 = �𝐴𝐴 𝐵𝐵 𝐶𝐶 0�,𝜓𝜓 = �𝐷𝐷0�,I 為單位矩陣。結合上述兩種控制增益,我 們即可獲得一個結合狀態回饋與雜訊前饋控制之最佳調節器策略如下:w
K
x
x
K
u
=
−
−
f (2.23) 最後,我們利用 LQR 最佳控制設計方法來設計出適當的線性狀態 回授控制器 u 值:𝑢𝑢 = −𝐾𝐾 ∙ 𝑥𝑥來最小化下面的效能指標 (Cost Function): 𝐽𝐽 = ∫ 𝑥𝑥∞ 𝑇𝑇(𝑡𝑡)𝑄𝑄𝑥𝑥(𝑡𝑡) + 𝑢𝑢𝑇𝑇(𝑡𝑡)𝑅𝑅𝑢𝑢(𝑡𝑡)𝑑𝑑𝑡𝑡 0 (2.24) 10圖2.1 LQR 閉迴路控制系統 其中𝑄𝑄𝑄𝑄𝑅𝑅4×4為一個對稱半正定矩陣和 R>0。其所產生之閉迴路控制系 統如圖 2.1 所示。 求解(2.24)式,我們可得下面最佳之控制增益值 (Control Gain): P B R K = −1 T (2.25) 其中 P 值滿足下面連續時間代數 Riccati 方程式: 0 1 + = − − + PA PBR B P Q P AT T (2.26) 2.3. SDC設計
SDC (State Dependent Coefficient)為狀態相關係數[17],是近二十 年所出現的非線性控制法,目前已成功應用在多種領域的控制設計中, 其概念是使用類似線性設計方法,將每一時間點的系統非線性方程式 以線性狀態呈現,以達到實際消除非線性設計之目的。需要注意的是, SDC 設計可能存在有多組解(非唯一最佳解)。以下,我們將簡述 SDC 之設計步驟。 首先,考慮一非線性系統: 𝑥𝑥̇ = 𝑓𝑓(𝑥𝑥) + 𝐵𝐵(𝑥𝑥)𝑢𝑢 (2.27) 11
其中𝑥𝑥 ∈ 𝑅𝑅𝑛𝑛和𝑢𝑢 ∈ 𝑅𝑅𝑚𝑚分別表示為系統狀態和控制輸入。 其次,將𝑓𝑓(𝑥𝑥) ∈ 𝑅𝑅𝑛𝑛表示如下:𝑓𝑓(𝑥𝑥) = 𝐴𝐴(𝑥𝑥)𝑥𝑥。若我們將矩陣𝐴𝐴(𝑥𝑥) 與𝐵𝐵(𝑥𝑥)視為與狀態變數無關之時變係數矩陣,則(2.27)式可以表示為一 類線性系統。 最後,我們依據前述 LQR 設計方法並考慮下面效能指標: J = ∫ [𝑥𝑥∞ 𝑇𝑇𝑄𝑄(𝑥𝑥)𝑥𝑥 + 𝑢𝑢𝑇𝑇𝑅𝑅(𝑥𝑥)𝑢𝑢] 0 𝑑𝑑𝑡𝑡 (2.28) 其中𝑄𝑄𝑇𝑇(𝑥𝑥) = 𝑄𝑄(𝑥𝑥) ≥ 0, 𝑅𝑅𝑇𝑇(𝑥𝑥) = R(x) > 0以及(∙)𝑇𝑇為矩陣轉置。則 (2.28)式可得一類似 LQR 之設計結果。在本論文中,我們假設𝐵𝐵(𝑥𝑥) ≠ 0 與𝑄𝑄(𝑥𝑥) ≠ 0,及𝑥𝑥的任何狀態不為 0。 2.4. 輸入-狀態回授線性化設計 輸入-狀態回授線性化[18],是一種解決非線性狀態的控制理論, 其概念是利用輸入狀態的回授,消除系統的非線性部分。以下,我們 將簡述輸入-狀態回授線性化之設計步驟。 首先,假設有一仿射函數型式(affine-type)非線性系統如下:
( ) ( )
x g x u f x= + (2.29) 其中x ∈ R 、𝑓𝑓: 𝐷𝐷𝑥𝑥 → 𝑅𝑅𝑛𝑛和𝑔𝑔: 𝐷𝐷𝑥𝑥 → 𝑅𝑅𝑛𝑛×𝑝𝑝在𝐷𝐷𝑥𝑥 ∈ 𝑅𝑅𝑛𝑛域都充分平滑。如果 存在一個 diffeomorphism 𝑇𝑇: 𝐷𝐷𝑥𝑥 → 𝑅𝑅𝑛𝑛使得𝐷𝐷𝑧𝑧=T(𝐷𝐷𝑥𝑥)包含原點且非線性 映射𝑧𝑧 = 𝑇𝑇(𝑥𝑥)將系統(2.29)轉換成下式:( )
( )
[
x u x]
B Az z= + φ−1 −θ (2.30) 其中(A,B)具可控制性,θ和∅為純量函數,且對所有的x ∈ 𝐷𝐷𝑥𝑥而言,∅(𝑥𝑥) 為非奇異解。定義𝑧𝑧 = 𝑇𝑇(𝑥𝑥),我們可得𝑧𝑧 = 𝛿𝛿𝑇𝑇 𝛿𝛿𝑥𝑥𝑥𝑥̇,將(2.29)式代入可得下 12式:
( ) ( )
[
f x g x u]
x T x x T z + ∂ ∂ = ∂ ∂ = (2.31) 比較(2.30)及(2.31)式可得:( )
x AT( )
x B( )
x f x T = − θ ∂ ∂ (2.32)( )
x B( )
x g x T = −1 ∂ ∂ φ (2.33) 並且將矩陣 A 及 B 設為下面控制標準型: , 0 0 0 1 0 0 1 0 0 0 0 1 0 n n A × = 1 1 0 0 0 × = n B (2.34) 我們可將(2.32)-(2.33)式中之右式分別表示如下:( )
( )
( )
( )
( )
( )
, 1 3 2 × − = − n n x x T x T x T x B x AT θ θ ( )
( )
1 1 / 1 0 0 0 × − = n x x B φ φ (2.35) 其中,𝑇𝑇(𝑥𝑥) = [𝑇𝑇1(𝑥𝑥)𝑇𝑇 𝑇𝑇2(𝑥𝑥)𝑇𝑇 ⋯ 𝑇𝑇𝑛𝑛(𝑥𝑥)𝑇𝑇]。 將(2.32)-(2.33)及(2.35)代入(2.31),我們可得下式: 13( ) ( )
[
]
( )
( )
( )
( )
( )
( )
( )
( )
u x g x T x g x T x g x T x g x T x f x T x f x T x f x T x f x T u x g x f x T x x T n n n n n n 1 1 2 1 1 1 2 1 × − × − ∂ ∂∂ ∂ ∂ ∂∂ ∂ + ∂ ∂∂ ∂ ∂ ∂∂ ∂ = + ∂ ∂ = ∂ ∂ (2.36)( ) ( )
[
]
( )
( )
( )
( )
( )
u x x x T x T x T u x g x f x T x x T n n n 1 1 3 2 / 1 0 0 0 × × + − = + ∂ ∂ = ∂ ∂ φ θ (2.37) 比較(2.36)與(2.37)式,我們可得到下面關係式:( )
x T( )
x f x T i i 1 + = ∂ ∂ ,i
=
1
,
2
,
,
n
−
1
(2.38)( )
x( )
x f x Tn θ − = ∂ ∂ (2.39)( )
=0 ∂ ∂ x g x Ti ,i
=
1
,
2
,
,
n
−
1
(2.40)( ) ( )
= 1 ≠0 ∂ ∂ x x g x Tn φ (2.41) 利用(2.39)與(2.41)式,我們可分別得到θ及∅的函式如下: ( )x =−(∂Tn /∂x) ( )f x θ (2.42)( ) (
x
=
∂
T
n/
∂
x
) ( )
g
x
1
φ
(2.43) 利用(2.38)與(2.40)式,我們可選擇適當的 T(x)函式。選擇控制器輸出 u 為狀態回授控制,其控制律定義如下: 14( ) ( )
x
(
x
K
T
( )
x
)
u
=
φ
θ
+
×
(2.44) 其中 K 為常數增益。利用關係 z=T(x),我們可將(2.44)式改寫如下:( ) ( )
x
(
x
Kz
)
u
=
φ
θ
+
(2.45) 將(2.45)式代入(2.30)式,我們可得下面線性系統:(
A
BK
)
z
z
=
+
(2.46) 因此,經由(2.30)~(2.46)式的回授線性化程序,我們可將原本的非線性 系統(2.29)式轉變成一線性系統模型(2.46)式。 15第三章 旋轉式倒單擺系統
3.1. 系統架構
本論文實驗所用的旋轉式倒單擺設備是使用 QUANSER 公司的 ROTPEN,全名為 QNET Rotary Inverted Pendulum Trainer for NI ELVIS, 是一款針對機械與電子課程的控制主題所設計的倒單擺設備,此設備(如 圖 3.1)目的是要讓使用者透過此設備能夠了解典型的倒單擺控制、系統模 型、參數評估、擺起控制、平衡控制、二次線性調節器(LQR)以及非線性 控制等等,使用者也可以透過 LabVIEW 圖控程式自行設計控制器。
ROTPEN 的優點在於 QUANSER 公司和美國國家儀器公司(NI)一同 合作發展,擁有全球領先的量測儀器和高精度的控制系統設備。而旋轉 式倒單擺在機板上搭載 DC 馬達、功率放大器以及光學感測器,幫助使 用者整合硬體上的難處,讓使用者能快速上手和專注於控制實驗。
圖3.1 系統架構示意圖
3.1.1. 硬體規格
在本論文中,實驗所用的硬體有 NI ELVIS、旋轉倒單擺模組、NI PCI-6251 以及一台個人電腦。以下分別做硬體介紹。
3.1.1.1. NI ELVIS
NI ELVIS[19]如圖 3.2,是由美國家儀器(NI)所開發生產,全名為 NI Educational Laboratory Virtual Instrumentation Suite,是一款專門為機械、 電子課程以及控制教學而設計。此款模組化實驗平台可搭配由不同廠商 或教師所開發的外掛式機板、軟體與教材,種類非常多,有輔助電路、 微控制器、控制、電信、量測、電力與能源方面的各種外掛式機板,可 用於多種的應用領域與教學課程,提供了一整套完善的工程生態系統。
目前 NI ELVIS 共有三個版本:NI ELVIS I、NI ELVIS II 以及 NI ELVIS II+。本論文所使用的版本為 NI ELVIS I。
圖3.2 NI ELVIS I
3.1.1.2. 旋轉倒單擺模組
旋轉倒單擺模組[20]是由 QUANSER 公司所開發生產的,全名為 QNET rotary inverted pendulum trainer,是 QNET (QUANSER Engineering Trainer for NI-ELVIS)系列之一。旋轉式倒單擺模組,如圖 3.3 主要結構是 由一個直流馬達、旋轉臂感測器、旋轉臂、單擺感測器和單擺所構成, 使用者可以透過 LabVIEW 圖控程式與 NI ELVIS 平台進行互動,並利用 數據擷取卡(NI PCI-6251)讀取旋轉式倒單擺模組的三個輸出數值:旋轉臂 角度、單擺角度和電流感測器,以及控制馬達的電壓讓旋轉臂轉動。 圖3.3 旋轉式倒單擺模組 旋轉式倒單擺系統參數如表 3.1,是由廠商所提供,也是本論文在模 擬與實作所用的參數。 18
表 3.1 旋轉式倒單系統參數 參數. 描述 數值 單位 𝑀𝑀𝑝𝑝 單擺質量 0.027 Kg 𝑙𝑙𝑝𝑝 單擺長度 0.2 m r 旋轉臂長度 0.0826 m 𝑀𝑀𝑎𝑎𝑎𝑎𝑚𝑚 旋轉臂的重量 0.028 Kg g 重力加速度 9.81 m/s2 J𝑒𝑒𝑒𝑒 馬達旋轉軸的慣性 0.000230 Kg.m2 J𝑝𝑝 單擺旋轉軸的慣性 0.0002 Kg.m2 B𝑒𝑒𝑒𝑒 旋轉臂黏性阻尼 0 N.m/(rads) B𝑝𝑝 單擺黏性阻尼 0 N.m/(rads) R𝑚𝑚 馬達電樞電阻 3.3 Ω K𝑡𝑡 電機轉矩 0.028 N.m K𝑚𝑚 馬達電動勢 0.028 V/(rads) 3.1.1.3. NI PCI-6251 NI PCI-6251(如圖 3.4)是由 NI 所開發生產的一種高速多功能的資料 擷取卡(DAQ),是電腦與外部訊號之間的傳遞橋樑。對於旋轉式倒單擺系 統而言,主要的功能是將感測器上取得的旋轉臂及單擺角度的類比訊號 轉成數位化,讓電腦能夠做後續的處理,同時再將電腦所計算出的數位 訊號轉成類比來控制馬達的電壓。 19
圖3.4 NI PCI-6251 3.1.1.4. 個人電腦 本論文實驗所使用的電腦規格如下: CPU:Intel® Core™ i5 RAM:8GB OS:Windows 7 3.1.2. 軟體規格 3.1.2.1. LabVIEW
LabVIEW (Laboratory Virtual Instrumentation Engineering Workbench, 實驗室虛擬儀器工程平台) [21]如圖 3.5,是由美國國家儀器公司(NI)所開 發的圖形化程式,是一款極適合各種量測或控制系統使用,同時也是 NI 設計平台的核心。NI 多年來一直致力於研發 PC-Based 的量測與自動化相 關產品,為嵌入式設計、工業控制測試與自動化提供各種量測或控制應 用所需的完整工具,讓不同領域的工程師和科學家們能大幅縮短工作時 間。此外 LabVIEW 是一款資料流程式語言,透過圖形化的接線與圖示 以 直覺式的資料流呈現便可建構出程式,相較於以往的程式語言所使用的 20
文字較為直覺和容易上手。 圖3.5 LabVIEW 虛擬儀控介面圖(來源:NI[22]) 同時 LabVIEW 的虛擬儀控包含數百種的圖像、控制元件和 3D 視覺呈現 工具,可以讓設計者輕鬆的設計儀器的控制介面。 在本論中文,所使用的 LabVIEW 為 2013 版本。 3.1.2.2. MATLAB
MATLAB (MATrix LABoratory,矩陣實驗室) [23],如圖 3.6 是由 MathWorks 公司所開發的數學軟體,主要功能為演算法開發、資料視覺 化、資料分析以及數值計算的高階技術計算語言和互動式環境,另外還 有配套軟體 Simulink,能夠提供視覺化開發環境,常用於系統模擬、動 態/嵌入式系統開發等方面,並且附加多種的工具箱,提供不同領域的應 用。由於 MATLAB 功能強大、語法簡單與 C 語言相似,所以深受廣大的 科學家與工程師喜愛,亦是所有數學軟體中功能最強大的軟體。 在本論文中,所使用的 MATLAB 版本為 8.3(R2014a)。 21
圖3.6 MATLAB 示意圖 3.2. 系統模型 旋轉式倒單擺系統為一非線性不穩定系統,是傳統教授及驗證各種控 制理論之最典型的儀器設備。本論文所使用的旋轉式倒單擺系統其結構 如圖 3.7 所示。是由下列兩個部分所構成:旋轉臂和單擺。其中,旋轉臂 固定於一個直流馬達上,利用電壓來驅動馬達,使旋轉臂轉動,而單擺 則附掛在 L 型旋轉臂之末端支點上。旋轉式倒單擺系統的運作如下:首 先,馬達與旋轉臂為靜止的狀態,單擺則維持在向下姿態之靜止位置, 此時我們定義旋轉臂的擺動角度 θ=0 以及單擺的擺動角 α=0。接著施加 一正電壓於直流馬達,旋轉臂則會產生一個 θ<0 角度(θ<0 代表順時針轉 動),由於旋轉臂轉動所產生的力矩造成單擺也跟著擺動 α>0 角度(α>0 代表逆時針轉動),此時持續對馬達施加適當的正負電壓,單擺的擺動角 α則會愈擺愈大,最終會使單擺擺動到向上姿態形成倒單擺姿態(α=180)。 最後,利用控制法持續對馬達施加適當的電壓,倒單擺則會持續的維持 在向上垂直位置。 22
圖3.7 旋轉式倒單擺系統示意圖 3.2.1. 運動學 在本子節中,我們將推導倒單擺系統質量中心(center of mass:COM) 相對於系統座標原點之運動軌跡,其座標表示為(𝑥𝑥𝑝𝑝, 𝑦𝑦𝑝𝑝)。首先,我們可求 取(𝑥𝑥𝑝𝑝, 𝑦𝑦𝑝𝑝)相對於單擺旋轉支點之相對座標如下:
( ) ( )
α cosθ sin ~ 0 p p p p x x l x = − = (3.1)( )
α cos ~ 0 p p p p y y l y = − =− (3.2) 其中,單擺旋轉支點相對系統座標原點之座標表示為(𝑥𝑥𝑝𝑝0, 𝑦𝑦𝑝𝑝0)。其次,我 們可求得單擺旋轉支點相對系統座標原點之座標如下:( )
θ sin 0 r xp = (3.3) h yp0 = (3.4) 利用(3.1)-(3.4)式,我們可求取(𝑥𝑥𝑝𝑝, 𝑦𝑦𝑝𝑝)相對於系統座標原點之座標如下:( )
θ sin( ) ( )
α cosθ sin p p r l x = + (3.5)( )
α cos p l h p y = − (3.6) 23最後,利用(3.5)-(3.6)式,我們可求得倒單擺系統質量中心之運動軌 跡速度如下:
( )
lp( ) ( )
lp( ) ( )
a rp
x = cosθ θ+ cosα cosθ α − sin α sin θ θ (3.7)
( )
α α p lpsin y = (3.8) 3.2.2. 系統能量 在此節中,我們將推導倒單擺系統質量中心之位能𝑈𝑈𝑇𝑇(α)及動能 𝑇𝑇𝑇𝑇(θ, α)。首先,利用(3.6)式,我們可求得倒單擺系統質量中心之位能如下:( )
(
α)
α) cos ( Mpg h lp T U = − (3.9) 其次,倒單擺系統之動能計算可分別由下面三個部分求得:(一)單 擺旋轉臂之旋轉動能 Trot,arm,(二)單擺旋轉動能 Trot,pend及(三)倒單擺 系統質量中心之移動動能 Ttrans,pend。上述三種動能可分別計算如下: 2 2 1 ,arm Jeqθ rot T = (3.10) 2 2 1 ,pend Jpα rot T = (3.11)(
( )2 ( )2)
2 1 ,pend M p xp yp trans T = + ( ) ( ) ( )(
2 2 2)
1 cos cos 2 2 2 cos 2 2 1 c p l c p rl r p M + + + = θ θ θ α θα α (3.12) 其中( )
θ cos 1= c( )
( )
( ) ( )
(
sin2 sin2 sin 2 sin)
22 lp lp α θ r θ α θ
c = −
( ) ( )
2 sin 2 2 cos2( )
sin2( )
2 sin 2 2 1 α θ α α θ θ α lp p l − − Jeq代表單擺旋轉臂之等效慣量,Jp代表單擺之等效慣量,及 Mp代表倒單 24擺系統之等效質量。為簡化計算,在下面推導中我們假設 c1=1 及 c2=0。 最後,利用(3.10)-(3.12)式,我們可求得倒單擺系統質量中心之動能 如下:
( )
(
)
(
2)
2 2 1 2 2 cos 2 2 1 ) , (θ α Jeq Mpr θ θ Jp Mplp α T T = + + +( ) ( )
θ cos α θα cos p rl p M + (3.13) 3.2.3. 尤拉-拉格朗日運動方程式 首先,我們定義倒單擺系統之拉格朗日方程式如下: ) ( ) , ( ) ( θ α α T U T T q L = − (3.14) 其中𝑞𝑞 = [𝑞𝑞1 𝑞𝑞2]𝑇𝑇 = [𝜃𝜃 𝛼𝛼]。其次,我們定義系統之尤拉-拉格朗日運動方 程式如下: i Q q L i q q L i q t = ∂ ∂ − ∂ ∂ ∂ ) ( ) ( 2 (3.15)其中 i={1,2}及 Qi代表一個延伸力(generalized force)。若不考慮摩擦力,
則 Qi之值如下所示:
(
)
0 2 , 1 = − = = Q m R m K m V t K output Q τ θ (3.16) 其中 Kt為馬達力矩常數,Vm為馬達輸入電壓,Km為馬達感應電動勢常數, Rm為馬達電樞電阻。利用(3.9)及(3.13)-(3.14)式,我們可得下式:( )
(
2 2)
2( ) ( )
2 1 2 sin cos 2 cos ) (θ
θ
θ
θ
θ
L q J M r M r q t∂ = eq + p − p ∂ ∂( )
θ(
cos( )
α α sin( )
α α)
sin( ) ( )
θ cos α θαcos 2 p p p prl M rl M − − + (3.17) 25
(
)
α
( ) ( )
θ
α
θ
α
( ) cos sin 2 2 2 p p p p p M l M rl J q L q t∂ = + − ∂ ∂( )
(
( )
( )
2)
sin cos cosα θ θ − θ θ +Mprlp (3.18)( )
(
( )
( )
2)
1cos
cos
sin
)
(
q
M
r
θ
l
α
θ
α
r
θ
θ
L
q
=
−
p p+
∂
∂
(3.19)( )
(
r
( )
g
)
l
M
q
L
q
=
−
p p+
∂
∂
α
θ
θ
α
cos
sin
)
(
2 (3.20) 最後,利用(3.16)-(3.20)式,我們可求得尤拉-拉格朗日運動方程式 如下:( )
(
2 2)
2( ) ( )
2 sin cos cos θ θ M r θ θ θ r M Jeq + p − p( ) ( )
(
( )
)
output p prl M θ α α − α α =τ + 2 sin cos cos (3.21)(
2)
( )
(
( )
( )
2)
sin cos cosα θ θ θ θ α+ − + p p p p p M l M rl J( )
0 sin = + Mpglp α (3.22) 3.2.4. 系統動力學模型 首先,我們將(3.21)-(3.22)式重新安排成下面矩陣表示式:( )
q q+C( )
q q q+G( )
q =τ D , (3.23) 其中( )
( ) ( )
( )
( ) ( )
+ + = 2 2 2 cos cos cos cos cos p p p p p p p p eq l M J rl M rl M r M J q D θ θα θ α (3.24)( )
( ) ( )
( ) ( )
( ) ( )
− − − = 0 sin cos sin cos sin cos , 2θ
θ
α
α
α
θ
θ
θ
θ
p p p p rl p M rl M r M q q C (3.25)( )
=
0
sin
( )
α
p
gl
p
M
q
G
,
=
0
outputτ
τ
(3.26) 26其次,依據(3.23)式,我們可得系統動力學模型如下:
( ) ( )
q C q q q D( ) ( )
q g q D( )
qτ
D q 1 1 1 , − − − − + − = (3.27) 其中( )
(
( )
)
( ) ( )
α
θ
θ
2 2 2 2 2 2 2 2 1 sin cos cos 1 p p eq p p p eq pr J J M l J M r l M q D + + + = −( ) ( )
( ) ( )
( )
+ − − + ×θ
α
2θ
2θ
α
2 cos cos cos cos cos r M eq J p rl p M p rl p M p l p M p J p (3.28) 3.2.5. 狀態空間模型 定義下面系統狀態變數:[
T T]
T[
]
T q q x= = θ α θ α (3.29) 我們可將非線性動力學模型(3.27)表示成下面之非線性狀態空間模型[24]:u
x
b
x
f
x
=
(
)
+
(
)
(3.30) 其中 u=Vm( ) ( )
( )
+ + − = − q G q m R m K t K q q C q D q x f 0 0 0 , ) ( 1 (3.31) = − 0 ) ( 0 ) ( 1 m t R K q D x B (3.32) 27第四章 旋轉式倒單擺控制器設計
4.1. 衡點狀態空間模型 倒單擺控制器設計的目的為能使倒單擺能夠靜止維持在向上垂直位 置,即平衡點位置為𝑥𝑥0 = [0 𝜋𝜋 0 0]𝑇𝑇。依據此一平衡點位置及(3.30)-(3.32) 式,我們可求得系統在平衡點之非線性狀態空間模型如下: u x b x f x ~(~) ~(~) ~ = + (4.1) 其中𝑥𝑥� = [𝑞𝑞�𝑇𝑇 𝑞𝑞�̇𝑇𝑇]𝑇𝑇,𝑞𝑞� = 𝑞𝑞 − [0 𝜋𝜋]𝑇𝑇 = [𝜃𝜃 𝛼𝛼 − 𝜋𝜋]𝑇𝑇 = [𝜃𝜃 𝛼𝛼�]𝑇𝑇:( )
( )
( )
+ + − = − q G q m R m K t K q q C q D q x f ~ ~ ~ 0 0 0 ~ , ~ ~ ~ ~ ~ ) ~ ( ~ 1 (4.2) = − 0 ) ~ ( ~ 0 ) ~ ( ~ 1 m R t K q D x b (4.3)( )
(
( )
)
( ) ( )
α θ θ cos sin ~ cos 1 ~ 1 ~ 2 2 2 2 2 2 2 2 p l r p M eq J p l p M p J eq J r p M q D + + + = −( ) ( )
( ) ( )
( )
+ + × θ α θ α θ 2 2 2 cos ~ cos cos ~ cos cos r p M eq J p rl p M p rl p M p l p M p J (4.4)( )
( ) ( )
( ) ( )
( ) ( )
−
=
0
sin
~
cos
~
~
sin
cos
sin
cos
~
,
~
~
2θ
θ
α
α
α
θ
θ
θ
θ
p p p p prl
M
rl
M
r
M
q
q
C
(4.5)( )
~ =− 0sin( )
α~ ~ p pgl M q G (4.6) 依據平衡點定義,系統(4.1)式會產生平衡點之條件為: 0 ) ~ ( ~ ) ~ ( ~ + = e e e b x u x f (4.7) 28其中𝑥𝑥�𝑒𝑒為平衡點及𝑢𝑢𝑒𝑒為在平衡點時系統所需之控制值。依據(4.2)-(4.3)式, 我們得知系統之一平衡點及其所需之控制值分別為𝑥𝑥�𝑒𝑒 = 0及𝑢𝑢𝑒𝑒 = 0,此證 明倒單擺能夠靜止維持在向上垂直位置。
其次,利用下面近似式(假設θ → 0及α� → 0):
( )
θ
1, sin( )
θ
0, cos( )
α
~ 1, sin( )
α
~α
~cos ≈ ≈ ≈ ≈ (4.8) 我們可將平衡點之非線性狀態空間模型(4.1)近似成下面之線性狀態空間 模型:
Bu
x
A
x
≈ ~
+
~
(4.9) 其中(
)
(
)
(
)
(
)
+ + − + + + + + + − + + = 0 0 0 0 1 0 0 0 0 1 0 0 2 2 2 2 2 2 2 2 2 2 2 2 m p p eq p p eq p m t p p p p eq p p eq p p p p eq m p p eq p p eq p m t p p p p p eq p p eq p p p R r M J J l M J J K K rl M r M J J l M J J gl M r M J R r M J J l M J J K K l M J r M J J l M J J rgl M A (4.10)(
)
(
)
(
)
+ + + + + = m R r p M p J eq J p l p M eq J p J t K p rl p M m R r p M p J eq J p l p M eq J p J t K p l p M p J B 2 2 2 2 2 0 0 (4.11) 294.2. 平衡控制器設計 4.2.1. 時變 LQR 控制器設計 平衡控制器設計的目的是為了能使倒單擺系統狀態趨近於平衡點位 置,即𝑥𝑥� → 0。為達成此一目標,我們利用 LQR 最佳控制設計方法來設 計出適當的線性狀態回授控制器 u 值:𝑢𝑢 = −𝐾𝐾(𝑥𝑥�)𝑥𝑥�,來最小化下面的效 能指標(cost function):
( ) ( )
tQx t u( ) ( )
t Ru t dt x J = T + T∫
∞~ ~ 0 (4.12) 其中QϵR4×4為一個對稱半正定矩陣和 R>0。 為求解最佳控制值,我們將(4.2)式改寫如下:( )
x x A x f(~) ~ ~ ~ ~ = (4.13) 其中( )
( )
( )
( )
( )
( )
= x A x A x A x A x A x A x A ~ ~ ~ ~ ~ ~ 0 ~ ~ ~ ~ ~ ~ 0 1 0 0 0 0 1 0 0 ) ~ ( ~ 44 43 42 34 33 32 (4.14)( )
~ 0 sinα~( )
α~ ~ ) ~ ( ~ ~ 1 42 32 = − p pgl M q D x A A (4.15)( )
( )
+ − = − 0 0 0 ~ , ~ ~ ~ ~ ) ~ ( ~ ~ ~ ~ 1 44 43 34 33 m m t R K K q q C q D x A A A A (4.16) 依據(4.12)-(4.13)式,我們可得下面最佳之控制增益值(control gain):( )
x R b( ) ( )
x P x K ~ = −1~T ~ ~ (4.17) 其中𝑃𝑃(𝑥𝑥�)值滿足下面連續時間代數 Riccati 方程式:( ) ( )
~ ~( ) ( )
~ ~ ~( ) ( )
~ ~ ~ ~( ) ( )
~ ~ 0 ~ + − −1 + = Q x P x B R x B x P x A x P x P x AT T (4.18) 304.2.2. 非時變 LQR 控制器設計 為降低計算複雜度,我們考慮前述時變 LQR 控制器設計之一線性近 似解。利用(4.9)式,我們可得下面非時變最佳控制增益值: P B R K = −1 T (4.19) 其中 P 值滿足下面連續時間代數 Riccati 方程式: 0 1 + = − + − Q P B PBR PA P AT T (4.20) 其中 A 及 B 如(4.10)與(4.11)式所示。為進一步降低上述近似解之誤差, 我們首先將原系統平衡狀態方程式(4.1)式改寫如下: ) , ~ ( ~ ~ Ax Bu x u x = + +∆ (4.21)
( )
x u =(
A( )
x − A)
x +(
b( )
x − B)
u ∆ ~, ~ ~ ~ ~ ~ (4.22) 其中𝑢𝑢 = −𝐾𝐾𝑥𝑥�。依據(4.2)式、(4.10)-(4.11)式與(4.14)-(4.16)式,我們可得 ∆(0,0) = 0。 其次,我們修正控制 u 如下:( )
x u u u u→ * = +ω ~, (4.23) 其中ω(𝑥𝑥�, 𝑢𝑢)為一補償控制,定義如下:( )
~x,u =−b~+( ) ( )
~x(
(
A~ x~ − A)
~x +(
b~( )
~x −B)
u)
ω (4.24) 則(4.21)式成為:( )
x x b( )
x u Ax Bu x u Ax Bu A x = ~ ~ ~ +~ ~ = ~+ +∆(~, )= ~+ ~ * * (4.25) 依據(4.25)式,我們得知,透過上述補償控制,我們可將原非線性控制轉 變成一等效之線性控制。 314.3. 擺起控制器設計 前述平衡控制器能夠正常運作的前提假設是初始單擺擺動角與最終 平衡點(向上垂直位置)之誤差絕對值必須小於某個範圍,即|𝛼𝛼�0|≤ 𝜀𝜀。 因此,擺起控制器設計的目的為能使單擺能夠自動搖擺,並能在最短時 間內擺動到向上的倒單擺姿態,使得單擺擺動角與最終平衡點之誤差絕 對值進入到平衡控制器的有效工作範圍內。一旦單擺運動進入到平衡控 制器的有效工作範圍內,則擺起控制器將不再運作,取而代之的將是平 衡控制器繼續動作,以維持單擺繼續平衡在向上垂直位置。 在本論文中,我們採用 Lyapunov 函數來設計擺起控制器。首先,我 們定義 Lyapunov 函數為倒單擺系統之總能量如下:
( )
(
( )
~)
2 2 1 α E E V = (4.26) 其中𝐸𝐸(𝛼𝛼�)為一個定義在倒單擺系統之能量函數且滿足在平衡點之能量 E(0)=0。依據 Lyapunov 穩定性定理,倒單擺系統之平衡點是穩定的條件 是下面三個條件式必須同時滿足: (1) 𝑉𝑉(0) = 0 (2)對所有的𝐸𝐸(𝛼𝛼�) ≠ 0滿足𝑉𝑉(𝐸𝐸) > 0 (3)對所有的𝐸𝐸(𝛼𝛼�)滿足𝛿𝛿 𝛿𝛿𝑡𝑡𝑉𝑉(𝐸𝐸) > 0 將(4.26)式代入上述三個條件式,我們得知如果下式滿足:( ) ( )
~
( )
~
≤
0
∂
∂
=
∂
∂
α
α
E
t
E
E
V
t
(4.27) 則平衡點是穩定的。 其次,我們檢視是否可尋找到適當的能量函數𝐸𝐸(𝛼𝛼�)能滿足(4.27)式。 32定義能量𝐸𝐸(𝛼𝛼�)為針對單擺運動(不考慮旋轉臂)所產生之單擺旋轉動能 與位能之一函數,我們可得下式:
( )
α α~(
1 cos( )
α~)
2 1 ~ = 2 − − p p p M gl J E (4.28) 依據(4.28)式及尤拉-拉格朗日運動方程式,我們可得單擺運動方程式如 下:( )
α τ(
α)
( )
α α~ M gl sin ~ ~,a M l acos ~ Jp− p p = pend =− p p (4.29) 其中 a 為單擺所受到之加速度。將(4.28)-(4.29)式代入(4.27)式,我們可得:( )
E E( )
α~(
J α~ M gl sin( )
α~)
α~ E( )
α~ M l acos( )
α~ α~ V t = p − p p =− p p ∂ ∂ (4.30) 依據(4.30)式及 Lyapunov 穩定性定理,我們可選取加速度 a 值如下:( ) ( )
(
α α α)
µ sign E ~ cos ~ ~ a= × (4.31) 其中𝑢𝑢 ≥ 0為控制器增益及 sign 為正負號函數。假設單擺所受到之最大加 速度為 amax,則(4.31)式可以下面更實際之計算式實現:( ) ( )
(
)
(
µ α~ cosα~ α~)
max sign E sat a= a × (4.32) 最後,我們將單擺所產生之實際加速度 a 與直流馬達之輸入電壓 Vm 關係式表示如下: m m t p outputV
R
K
ar
M
=
=
τ
(4.33) 依據(4.32)-(4.33)式,我們可得擺起控制如下:( ) ( )
(
)
(
µ
α
~ cosα
~α
~)
max sign E sat K rR M V u a t m p m = × = (4.34) 334.4. 擺起/平衡控制器設計 依據前述擺起與平衡控制器設計,我們可直接將一靜止之旋轉式倒 單擺系統平衡至向上垂直位置。其方法是同時使用擺起控制器及平衡控 制器之閉迴路控制系統方塊圖,如圖 4.1 所示。 圖4.1 擺起/平衡閉迴路控制系統 首先,控制器以擺起控制器先行運作,待倒單擺擺動角進入平衡控 制器之有效工作範圍(|𝛼𝛼| < 𝜀𝜀)內時,此時以平衡控制器來取代擺起控制器, 繼續運作,直至系統達到平衡。依據上述設計原則,我們可設計擺起/平 衡控制器如下:
( )
( )
(
)
(
)
[
]
( )
α ε ε α ω α θ α θ α α α µ < ≥ + − × = ~~ , , ~ ~ ~ , ~ cos ~ ~ max u x K E sign sat K rR M u T a t m p (4.35) 雖然前述擺起與平衡控制器設計方法可行,但基於平衡控制器之初 始條件限制,當擺起控制器進入平衡控制器之有效工作範圍內時,其系 統狀態卻無法滿足平衡控制器能正常運作所需之初始條件限制,以致倒 34單擺系統無法平衡至向上垂直位置。為解決此一問題,本論文採用回授 線性化設計方法來設計最佳控制增益值,使得平衡控制器之有效工作範 圍擴大,其設計方法如下所述。 首先,我們利用近似關係𝑐𝑐𝑐𝑐𝑐𝑐(𝑥𝑥�2) ≈ 1 與𝑐𝑐𝑖𝑖𝑠𝑠(𝑥𝑥�2) ≈ 𝑥𝑥�2,將倒單擺系統 在平衡點之非線性狀態空間模型(4.1)式改寫成下式: