| 研究生: |
林哲宇 Lin, Che-Yu |
|---|---|
| 論文名稱: |
基於線性二次調節器控制實現可彈跳及自我平衡之一維方塊機器人 Realization of One-Dimensional Cube Robot Capable of Bounce and Self-balancing based on Linear Quadratic Regulator Control |
| 指導教授: |
廖德祿
Liao, Teh-Lu |
| 學位類別: |
碩士 Master |
| 系所名稱: |
工學院 - 工程科學系 Department of Engineering Science |
| 論文出版年: | 2018 |
| 畢業學年度: | 106 |
| 語文別: | 英文 |
| 論文頁數: | 91 |
| 中文關鍵詞: | Cubli 、線性二次調節器 、卡爾曼濾波器 |
| 外文關鍵詞: | Cubli, Linear Quadratic Regulator, Kalman Filter |
| 相關次數: | 點閱:99 下載:12 |
| 分享至: |
| 查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
近年來,平衡控制為控制領域的熱門題目,應用於各式人類載具當中,如: 電動獨輪車、Lit Motors C-1及自我平衡的方塊機器人等。方塊機器人由外型正方體的金屬架、無刷馬達帶動的反應輪及煞車系統所組成。煞車系統的任務在於定速反應輪旋轉下,快速煞車使方塊機器人彈跳起來。然而,在煞車系統的機構方面雖然已有不同的設計方案,如單向煞車等,但皆存在缺點,因此本論文提出改善既有煞車設計的方案以保護系統亦能達到既定目標。在控制方面,本論文基於線性二次調節器控制設計控制器達到平衡控制,並在有雜訊的情況下,於控制系統中增加卡爾曼濾波器,以降低感測器雜訊對狀態估測的影響。
本論文亦提供建構一維方塊機器人的系統設計整合方案,包含硬體機構設計、韌體架構設計及軟體設計等,其中亦包括設計實驗量測系統模型中重要參數。在硬體方面,除了煞車系統外,反應輪分別嘗試以鋁合金及鐵製造,並測試其效果,而帶動反應輪之無刷馬達,選用MAXON公司出品的EC-flat-45 50 Watt 無刷馬達,並搭配馬達驅動器EPOS 2 Module 36/2, digital positioning controller。在韌體設計方面,以STM32嵌入式控制板及即時作業系統free-RTOS為基礎,使用IAR為編譯器建構控制器及資料收集,而在軟體設計方面,使用Microsoft Visual Studio Professional 2013平台開發及程式語言C sharp (C#)開發介面,顯示目前控制板所輸出的控制訊號及當前的狀態資料。由實驗結果顯示,本論文所建構的系統確實可實現彈跳、自我平衡等功能的一維方塊機器人。
In the past few years, the balance control with its applications in all kinds of vehicles such as self-balancing unicycle, Lit Motors C-1, and self-balancing Cube Robot has been a popular research topic of automation control community. Cube Robot comprises a frame with cube shape, reaction wheels driven by brushless motors, and braking system. The mission of braking system is stopping the reaction wheel, which is rotating with specific speed, to let Cube Robot jump up as fast as possible. However, there are many kinds of mechanical designs of the braking system such as one-sided braking system, but there are disadvantages of these designs. This thesis provides an improved design to protect the system and achieve the goal. A Linear Quadratic Regulator (LQR) controller is derived for the balance control of Cube Robot. Further, with the environmental noise, the proposed control system combines with Kalman filter to decrease the influence of white noise.
A one-dimensional Cube Robot is designed in this thesis. The proposed robot system consists of the mechanism of hardware design, architecture design of firmware, and software design including the erecting platform of the experiment to measure the coefficient of the system model. In hardware design, in addition to the braking system, the reaction wheel made of aluminum alloy and iron respectively is developed for performance testing. The brushless motor driving the reaction wheel is EC-flat-45 50 Watt, the product of MAXON. The motor driver, EPOS 2 Module 36/2, drives the brushless motor. The firmware is composed of STM32 embedded board and real-time operating system, free-RTOS. We use IAR as the compiler to build controller and collect data. To design the software, we use IDE, Microsoft Visual Studio Professional 2013, and programming language, C sharp (C#), to develop an interface software displaying control signal from the embedded board and current data of state. The experiment result shows that the prototype, one-dimensional Cube Robot, can jump up and balance itself.
[1] “Self-balancing unicycle”, https://en.wikipedia.org/wiki/Self-balancing_unicycle
[2] 2018 Honda Motor Co., Ltd, “UNI-CUB”, http://world.honda.com/UNI-CUB/
[3] 2018 American Honda Motor Co., Ltd, “Fun Riding at Every Speed”, https://www.honda.com/mobility/riding-assist
[4] Albert Khoury, “Lit Motors is readying its auto-balancing two-wheeler as Chinese challenger appears”, DIGITAL TRENDS,
https://www.digitaltrends.com/cars/lit-motors-aev-gets-chinese-knockoff/
[5] Mohanarajah Gajamohan, M. Merz, I. Thommen, and R. D’Andrea,“The Cubli: A Cube that can Jump Up and Balance”, IEEE/RSJ International Conference on Intelligent Robots and Systems, Vilamoura, Algarve, Portugal, October 7-12, 2012
[6] Mohanarajah Gajamohan, Michael Muehlebach, Tobias Widmer, and Raffaello D’Andrea, “The Cubli: A Reaction Wheel Based 3D Inverted Pendulum”, IEEE Control Conference (ECC), Zurich, Switzerland, July 17-19, 2013
[7] Michael Muehlebach, Mohanarajah Gajamohan, and Raffaello D’Andrea, “Nonlinear Analysis and Control of a Reaction Wheel-based 3D Inverted Pendulum”, IEEE 52nd Annual Conference on Decision and Control, Florence, Italy, 2013
[8] Rupam Singh, Vijay Kumar Tayal, and Hemandar Pal Singh, “A Review on Cubli and Non Linear Control Strategy”, IEEE International Conference on Power Electronics, Intelligent Control and Energy Systems, 2016
[9] “Big Hero 6 (film)”, https://en.wikipedia.org/wiki/Big_Hero_6_(film)
[10] Erik Bjerke, Björn pehrsson, “Development of a Nonlinear Mechatronic Cube”, Chalmers University of Technology
[11] Manuel Olivares, Pedro Albertos, “On the linear control of underactuated system: the flywheel inverted pendulum”, IEEE International Conference on Control and Automation (ICCA), Hangzhou, China, June 12-14, 2013
[12] Vladimir A. Chobotov, “Spacecraft Attitude Dynamics and Control”, Orbit Book co., Original edition (October 1991)
[13] A. Purushotham, J. Anjeneyulu, “Kane’s Method for Robotic Arm Dynamics: a Novel Approach”, IOSR Journal of Mechanical and Civil Engineering, Volume 6, Issue 4 (May. – Jun. 2013), PP 07-13
[14] Raymond DeCarlo, “Linear Systems: A State Variable Approach with Numerical Implementation”, Parentice Hall, 1989
[15] “Control Systems / Controllability and Observability”,
https://en.wikibooks.org/wiki/Control_Systems/Controllability_and_Observability
[16] Brian D. O. Anderson and John B. Moore, “Optimal control: linear quadratic methods”, Dover Publications, 2007
[17] F.L. Lewis, D. Vrabie, and V.L. Syrmos, “Optimal Control”, 3rd edition, John Wiley, 2013
[18] F.L. Lewis, “Applied Optimal Control and Estimation: Digital Design and Implementation”, Prentice-Hall, New Jersey, TI Series, 1992
[19] Vladimír Kučera, “A Review of the Matrix Riccati Equation”, Kybernetika, Vol. 9, No. 1, 1973
[20] Matlab & Simulink, “Inverted Pendulum: State-Space Methods for Controller Design”
http://ctms.engin.umich.edu/CTMS/index.php?example=InvertedPendulum§ion=ControlStateSpace
[21] Massachusetts Institute of Technology, “Discrete Time Observers and LQG Control”, http://web.mit.edu/2.151/www/Handouts/Kalman.pdf
[22] N.A. Thacker, A.J. Lacey, “Tutorial: The Kalman Filter”, Tina Memo, No.1996-002
[23] P. Van Dooren, “A General Eigenvalue Approach For Solving Riccati Equations”, Stanford University
[24] Alan J. Laub, “A Schur Method For Solving Algebraic Riccati Equations”, Massachusetts Institute of Technology
[25] “Chapter 4: The QR algorithm”,
http://people.inf.ethz.ch/arbenz/ewp/Lnotes/chapter4.pdf
[26] L. N. Trefethen, D. Bau, “Numerical Linear Algebra”, SIAM, 1997
[27] D. Bindel, J. Demmel, W. Kahan, O. Marques, “On Computing Givens rotations reliably and efficiently”, University of Tennessee, January 31, 2001
[28] Daniel Kressner, “Block Algorithm for Recording Standard and Generalized Schur Forms Lapack Working Note 171”,
http://www.netlib.org/lapack/lawnspdf/lawn171.pdf
[29] Maxon Motor, “EPOS2 Module 36/2 Motherboard Hardware Reference”
[30] Maxon Motor, “EPOS2 Module 36/2 Positioning Controller Hardware Reference”
[31] Tilen Majerle, “Library 43-MPU-6050 6-axes gyro and accelerometer for STM32F4”, https://stm32f4-discovery.net/2014/10/library-43-mpu-6050-6-axes-gyro-accelerometer-stm32f4/
[32] Future electronics, “OMRON Rotary Encoder E6B2-CWZ6C 2000P/R”
[33] Maxon Motor, “EPOS2 Positioning Controllers Application Notes”
[34] Maxon Motor, “EPOS2 Positioning Controllers Communication Guide”
[35] Maxon Motor, “EPOS2 Positioning Controllers Firmware Specification”
[36] Tilen Majerle, “Library 42-Control RC servo with STM32F4”,
https://stm32f4-discovery.net/2014/10/library-42-control-rc-servo-stm32f4/
[37] Tilen Majerle, “Library 04-USART for STM32F4”,
https://stm32f4-discovery.net/2014/04/library-04-connect-stm32f429-discovery-to-computer-with-usart/
[38] FreeRTOS, “The FreeRTOS Kernel”, https://www.freertos.org/
[39] “Computation of cyclic redundancy checks”,
https://en.wikipedia.org/wiki/Computation_of_cyclic_redundancy_checks
[40] Noah Coad, “Serial (RS-232 Serial COM Port) in C# .NET”,
https://blogs.msmvps.com/coad/2005/03/23/serialport-rs-232-serial-com-port-in-c-net/