研究生: |
梁益榕 Liang, Yih-Rong |
---|---|
論文名稱: |
應用支援向量機於無人機即時健康診斷系統 Application of Support Vector Machine for Real-Time Health Diagnosis System for Drones |
指導教授: |
賴維祥
Lai, Wei-Hsiang |
學位類別: |
碩士 Master |
系所名稱: |
工學院 - 航空太空工程學系 Department of Aeronautics & Astronautics |
論文出版年: | 2022 |
畢業學年度: | 110 |
語文別: | 中文 |
論文頁數: | 65 |
中文關鍵詞: | 多軸無人機 、健康診斷 、支援向量機 、機器學習 、滑動視窗 |
外文關鍵詞: | UAV, Health Diagnosis, SVM, Machine Learning, Window Sliding Technique |
相關次數: | 點閱:105 下載:0 |
分享至: |
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
近年來無人機產業蓬勃發展,但因無人機使用者對於飛行安全的安全意識不高,導致意外頻傳,因此無人機的即時健康診斷將會是影響未來無人機發展的重要關鍵之一。本研究以即時診斷無人機的健康狀態為目標,即時診斷無人機目前為無失效或是具有潛在失效的狀態,具有潛在失效的定義為無人機至少存在馬達底座螺絲鬆脫、螺旋槳破損和螺旋槳安裝螺絲鬆脫這三種的損傷狀態中任何一種,且損傷程度為可被人發現。首先收集無人機於各種不同健康狀態的飛行振動數據,並對其分別做均方根、標準差和快速傅立葉轉換等時域或頻域特徵擷取,透過支援向量機機器學習演算法建立健康診斷模型,最終再透過滑動視窗、Mavlink通訊協議等方法,完整建立無人機即時健康診斷系統,並成功完成實際測試。
健康診斷模型於預測飛行環境相同的測試資料時,對於具有潛在損傷有著92%的招回率,但對於飛行環境較不同的新測試資料時,預測結果的招回率皆有些微下降,但在應用滑動視窗法後,可以使無失效狀態的招回率提升至94%,具有潛在損傷狀態則為49%;應用於實際任務情境時,不會過於頻繁的發送錯誤診斷,同時又能辨識出無人機目前具有潛在損傷狀態。
In recent years, the development of the drone industry is booming. But because users don’t have enough consciousness of flight safety, so lots of accident happened. Therefore, the real-time health diagnosis system for drones will be a key factor in the development of the drone industry. This study dedicates to build a real-time diagnosis system for drones. Drones can be real-time diagnosed as nonfailure status or having potential failure status. The definition of having potential failure status is that drone have at least one of three fault conditions which are loosening of motor mount, propeller broken and loosening of propeller. This study uses the vibration signal of different health status and extract the time domain or frequency domain features with feature engineering methods. Next, Support Vector Machine(SVM) model can be trained by using those features. During the model training, feature selection and hyper-parameter tuning method have been applied to avoid model overfitting. Then, this study integrates the model and Window Sliding Technique and Mavlink to the real-time health diagnosis system. And finished the actual experiment successfully.
When model is predicting the data which have the similar flight condition with training data, the recall of prediction of having potential failure status is 92%. But when model is predicting new data, the recall of prediction both nonfailure status and having potential failure status reduce slightly. After Window Sliding Technique has been applied, the recall of prediction nonfailure status is 94% and having potential failure status is 49%. When system running in the real mission, this setup can diagnose that drone have potential failure status, and won’t send wrong diagnosis results too often.
[1] Drone & FAA Modernization Reform of 2012, Public Law 112-95, sec 331(8).
[2] Gorucu, S, Y. Ampatzidis (2021), “Drone Injuries and Safety Recommendations”, UF/IFAS Department of Agricultural and Biological Engineering, vol 2021, No 3.
[3] Kandaswamy, G, P. Balamuralidhar (2017), “Health Monitoring and Failure Detection of Electronic and Structural Components in Small Unmanned Aerial Vehicles,” World Academy of Science, Engineering and Technology International Journal of Mechanical and Mechatronics Engineering, Vol.11, No.5, pp.1080-1089.
[4] Yap, Y. K (2014), “Structural Health Monitoring for Unmanned Aerial Systems,” Technical Report No. UCB/EECS-2014-70. Electrical Engineering and Computer Sciences University of California at Berkeley.
[5] 蔡松廷(2020),「應用小波散射與機器學習於四軸無人機飛行數據分析之診斷分類系統」,國立成功大學民航研究所碩士論文。
[6] Ge, C. F, D. Kyle, A. S. Mukul, L. Yuan and L. X. Lu (2021). "Development of a Drone’s Vibration, Shock, and Atmospheric Profiles" Applied Sciences, 11(11), p 5176.
[7] 鄭德力(2019),「應用自組織映射圖於四軸無人機飛行數據分析之診斷系統」,國立成功大學航空太空工程研究所碩士論文。
[8] Bronz, M, E. Baskaya, D. Delahaye, S. Puechmorel (2020), “Real-time Fault Detection on Small Fixed-Wing UAVs using Machine Learning”, DASC 2020 AIAA/IEEE 39th Digital Avionics Systems Conference, October, pp.1~10.
[9] Bondyra, A, P. Gasior, S. Gardecki and A. Kasiński (2017), "Fault diagnosis and condition monitoring of UAV rotor using signal processing," 2017 Signal Processing: Algorithms, Architectures, Arrangements, and Applications (SPA), pp.233~238.
[10] Lai, Y, B. Yang, X. Jiang, F. Jia, N. Li, A. K. Nandi (2020), “Applications of machine learning to machine fault diagnosis: A review and roadmap”, Mechanical Systems and Signal Processing, 138, 106587.
[11] Tahir, M. M, S. Badshah, A. Hussain, M. A. Khattak (2018),” Extracting accurate time domain features from vibration signals for reliable classification of bearing faults”, International Journal of Advanced and Applied Sciences, 5(1), pp.156~163.
[12] Richman, J. S, J. R. Moorman (2000), “Physiological time-series analysis using approximate entropy and sample entropy.” American journal of physiology. Heart and circulatory physiology, 278(6).
[13] Cooley, J. W, J. W. Tukey (1965), “An algorithm for the machine calculation of complex Fourier series.” Mathematics of Computation, 19, pp.297~301.
[14] Cortes, C, V. Vapnik (1995), “Support-vector networks, ” Mach Learn, 20, pp.273~297.
[15] Gunn, S. R (1998), “Support vector machines for classification and regression ,” ISIS technical report, 14(1), pp.5~16.
[16] Baghaee, H. R, D. Mlakić, S. Nikolovski and T. Dragicević (2020), "Support Vector Machine-Based Islanding and Grid Fault Detection in Active Distribution Networks", IEEE Journal of Emerging and Selected Topics in Power Electronics, vol. 8, no. 3, September, pp.2385-2403.
[17] Raza, A, A. Dhakal, S. Honkanen, R. Baets (2015), “Glucose sensing using photonics waveguide based evanescent Raman spectroscopy”, University of Ghent, Ughent, Belgium.
[18] Cramer, H(1959), Probability and Statistics: The Harald Cramér Volume, Almqvist & Wiksell.
[19] 林軒田,「機器學習技法」,https://www.csie.ntu.edu.tw/~htlin/mooc/
[20] https://www.analyticsvidhya.com/blog/2016/12/introduction-to-feature-selection-methods-with-an-example-or-how-to-select-the-right-variables/
[21] https://www.hobby-wing.com/tl96020-5008-motor.html
[22] https://docs.px4.io/master/en/flight_controller/cubepilot_cube_orange.html
[23] https://docs.px4.io/v1.9.0/en/gps_compass/rtk_gps_hex_here2.html
[24] Mission Planner, http://ardupilot.org/planner/
[25] https://vitalflux.com/k-fold-cross-validation-python-example/