• 沒有找到結果。

整合區間型卡爾曼濾波器與模糊控制系統於智慧型機器人之自主式避障與導航

N/A
N/A
Protected

Academic year: 2021

Share "整合區間型卡爾曼濾波器與模糊控制系統於智慧型機器人之自主式避障與導航"

Copied!
81
0
0

加載中.... (立即查看全文)

全文

(1)國立高雄大學電機工程學系 碩士論文. 整合區間型卡爾曼濾波器與模糊控制系統 於智慧型機器人之自主式避障與導航 Integrating interval Kalman filtering and fuzzy sets for obstacle avoidance and navigation of mobile robots. 研究生: 黃右棟 撰 指導教授: 吳志宏. 中華民國一百零二年七月.

(2) 致謝 首先 , 感謝指導教授吳志宏博士在研究所求學中的指導 , 老師費心的教導使我得以 了解機器人 、 全球衛星定位系統 、 與電機機電領域等的各種研究與專業能力 , 研究過程 中不時指點我正確的方向 、 教導我人生的準則與分享人生的體驗 , 使我在求學過程中獲 益良多 。 在研究中也感謝董信煌老師 、 賴智錦老師 、 潘欣泰老師與歐陽振森老師 , 在研究上 提供許多建議 , 豐富我研究上的內容 。 而接著要感謝 ICAL 的瓊輝學長 、 瓏軒學長 、 宜 陞學長 、 俐雯學姐 、 建榮 、 婉伊 、 立偉 、 冬瓜 、 錦源 、 旻良 、 冠文與 VICL 的小葉 、 信 慈 、 柯柯等諸位良師益友陪伴著我一起瘋狂 、 一起奮戰 , 為那些年我們一起待過的 NUK 生涯中添增許多豐富的色彩 , 使得當初我們一起嘴砲的功力 , 都成為現今刻苦銘心的回 憶。 最後 , 感謝這一路來默默在背後支持 、 關心與包容我的父母與親戚 , 因為有你們的 支持我的研究所路程才能毫無後顧之憂 , 並且順利的完成取得碩士學位 。 再次感謝所有 關心及支持我的朋友們 。 碩士生涯終於告一段落 , 隨之而來的是更大 、 更艱鉅的挑戰 。 未 來的日子中 , 希望大家還能有時間聚聚 , 互相的支持與鼓勵 。. 黃右棟 謹誌於國立高雄大學電機工程學系 計算機組 中華民國一零二年七月 i.

(3) 整合區間型卡爾曼濾波器與模糊控制系統 於智慧型機器人之自主式避障與導航 指導教授 : 吳志宏 博士 學生 : 黃右棟 國立高雄大學電機工程學系. 摘要 各式感應器的量測結果都存在不確定性與誤差 , 為取得較精確合理的數據 , 誤差修 正是其重要的一環 。 卡爾曼濾波器 (Kalman filtering) 是常用來作為修正量測誤差的方 法之一 , 但傳統卡爾曼濾波器對訊號急遽變化或存在不確定性時 , 其修正精確度往往有 所限制 。 區間型卡爾曼濾波器 (interval Kalman filtering) 為卡爾曼濾波器的延伸 , 可以 處理訊號的不確定性 , 但訊號因為區間計算結果而累積 , 使得在實用上發生困難 。 為有 效解決其此限制 , 使區間型卡爾曼濾波器能有效應用於智慧型機器人的導航與避障 , 本 研究利用區間型卡爾曼濾波器取得感測器預測之區間值 , 提出應用權重概念對預測值作 相對修正之方法 , 以獲得較精確的預測效果 , 提升其實用性 。 該方法稱為區間型權重卡 爾曼濾波器 (weighted interval Kalman filtering) 。 本研究利用區間型權重卡爾曼濾 波結合模糊控制 (fuzzy logic control) , 在裝載多組超音波感應器模組之四輪型智慧型 機器人進行避障 。 超音波感應器訊號 , 經區間型權重卡爾曼濾法過濾後 , 作為模糊控制 輸入值 , 進行機器人自主式動態避障導航之任務 。 本方法經各式環境測試顯示 , 本研究 提出之區間型權重卡爾曼濾波法的效果在環境急遽變化大時 , 訊號處理效果優於傳統卡 爾曼濾波 。 關鍵字: 超音波 、 卡爾曼濾波器 、 區間型卡爾曼濾波器 、 模糊控制 、 避障 、 導航 、 自主 式機器人 ii.

(4) Integrating interval Kalman filtering and fuzzy sets for obstacle avoidance and navigation of mobile robots Advisor: Dr. WU, CHIH-HUNG Student: HUANG, YOU-DONG Department of Electrical Engineering, National University of Kaohsiung. ABSTRACT Due to the inaccuracy and imperfection of sensors, signals from sensors need to be filtered out before they are used for advanced processing. Kalman filtering (KF) is such a technique being able to filter out temporary signal disturbance. The interval Kalman filtering (IKF) is an advanced version of KF, in which all signals are wrapped as numerical intervals and outperforms traditional KF. For practical uses, an output estimation from KF or IKF is a certain value. The thesis presents a weighting heuristics that consider the strength of positive/negative intervals of the signal estimations and produce a weighted output to be used as input to fuzzy controllers of a mobile robot. The method is named as the weighted interval Kalman filtering (WIKF). The study integrates WIKF and fuzzy logic control (FLC) on a four-wheeled mobile robot for obstacle avoidance and autonomous navigation. The mobile robot used in this study carries 9 simple sonar sensors that acquire signals of obstacles periodically. Input to WIKF are sensor measurements each of which is with an interval describing the range of measurement errors; the output of WIKF is an interval of estimate of sensor signal. For robot controls, a certain value is calculated from the interval output of WIKF. In the thesis, several experiments of obstacle avoidance are conducted on a mobile robot and the results are analyzed. The results show that WIKF provides reliable navigation information better than that from traditional KF and IKF. Keywords: sonar, Kalman filtering, interval Kalman filtering, fuzzy controller, obstacle avoidance, navigation, autonomous mobile robots.. iii.

(5) 目錄 致謝 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. i. 中文摘要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. ii. 英文摘要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iii 1. 2. 緒論 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 1. 1.1 研究背景與動機 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 1. 1.2 研究目的與方法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 3. 1.3 研究流程與架構 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 4. 背景知識與相關文獻 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 6. 2.1 卡爾曼濾波器. 6. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 2.2 區間型卡爾曼濾波器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.3 模糊邏輯控制 3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17. 研究設計與方法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.1 區間型卡爾曼濾波器之問題 . . . . . . . . . . . . . . . . . . . . . . . . 22 3.2 區間型權重卡爾曼濾波器 . . . . . . . . . . . . . . . . . . . . . . . . . . 26 3.3 區間型權重卡爾曼濾波與模糊邏輯控制系統之整合 . . . . . . . . . . . . 29. 4. 實驗與結果分析 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 4.1 機構設計與實驗架構 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 4.2 實驗 A - 模擬卡爾曼濾波之效果與分析 . . . . . . . . . . . . . . . . . . 36 4.3 實驗 B - 模擬區間型權重卡爾曼濾波之效果與分析 . . . . . . . . . . . . 44 4.4 實驗 C - 實測區間型權重卡爾曼濾波於簡單環境之效果與分析 . . . . . . 47 4.5 實驗 D - 實測區間型權重卡爾曼濾波於複雜環境之效果與分析 . . . . . . 52. 5. 結論與未來展望 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66. iv.

(6) 5.1 結論 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 5.2 未來展望 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66. 參考文獻 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68. v.

(7) 圖目錄 1.1 研究進行流程圖 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 4. 2.1 卡爾曼濾波器流程圖 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.2 區間型卡爾曼濾波器流程圖 . . . . . . . . . . . . . . . . . . . . . . . . 17 2.3 模糊理論架構圖 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 2.4 模糊歸屬函數. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19. 3.1 超音波數據 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 3.2 區間型卡爾曼濾波器之結果 . . . . . . . . . . . . . . . . . . . . . . . . 24 3.3 區間型卡爾曼濾波器參數調整之結果 . . . . . . . . . . . . . . . . . . . . 24 3.4 區間型卡爾曼濾波器設定門檻值之結果 . . . . . . . . . . . . . . . . . . 25 3.5 區間型權重卡爾曼濾波器濾波之結果 . . . . . . . . . . . . . . . . . . . . 29 3.6 區間型權重卡爾曼濾波器流程圖 . . . . . . . . . . . . . . . . . . . . . . 29 3.7 超音波感應器之模糊歸屬函數 . . . . . . . . . . . . . . . . . . . . . . . 31 3.8 超音波感應器示意圖 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 3.9 模糊規則流程. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32. 3.10 模糊控制流程圖 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 4.1 實驗流程圖 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 4.2 機器人機構 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 4.3 卡爾曼濾波之適當參數 . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 4.4 卡爾曼濾波之不適當參數 . . . . . . . . . . . . . . . . . . . . . . . . . . 38 4.5 卡爾曼濾波之誤差結果 . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 4.6 設定參數 Q 之平均絕對誤差結果 . . . . . . . . . . . . . . . . . . . . . 39 vi.

(8) 4.7 設定參數 Q - Type 1 之結果 . . . . . . . . . . . . . . . . . . . . . . . 39 4.8 設定參數 Q - Type 2 之結果 . . . . . . . . . . . . . . . . . . . . . . . 40 4.9 設定參數 Q - Type 3 之結果 . . . . . . . . . . . . . . . . . . . . . . . 40 4.10 設定參數 Q - Type 4 之結果 . . . . . . . . . . . . . . . . . . . . . . . 40 4.11 設定參數 Q - Type 5 之結果 . . . . . . . . . . . . . . . . . . . . . . . 41 4.12 設定參數 Q - Type 6 之結果 . . . . . . . . . . . . . . . . . . . . . . . 41 4.13 設定參數 R 之平均絕對誤差結果 . . . . . . . . . . . . . . . . . . . . . 42 4.14 設定參數 R - Type 1 之結果 . . . . . . . . . . . . . . . . . . . . . . . 42 4.15 設定參數 R - Type 2 之結果 . . . . . . . . . . . . . . . . . . . . . . . 43 4.16 設定參數 R - Type 3 之結果 . . . . . . . . . . . . . . . . . . . . . . . 43 4.17 設定參數 R - Type 4 之結果 . . . . . . . . . . . . . . . . . . . . . . . 43 4.18 設定參數 R - Type 5 之結果 . . . . . . . . . . . . . . . . . . . . . . . 44 4.19 設定參數 R - Type 6 之結果 . . . . . . . . . . . . . . . . . . . . . . . 44 4.20 區間型權重卡爾曼濾波適當參數知結果 . . . . . . . . . . . . . . . . . . 45 4.21 區間型權重卡爾曼濾波不適當參數之結果 . . . . . . . . . . . . . . . . . 45 4.22 區間型權重卡爾曼濾波之誤差結果 . . . . . . . . . . . . . . . . . . . . . 45 4.23 卡爾曼濾波與區間型權重卡爾曼濾波參數之結果 . . . . . . . . . . . . . . 46 4.24 實測影像架設之直線環境 . . . . . . . . . . . . . . . . . . . . . . . . . . 47 4.25 直線之環境 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 4.26 直線環境正向 0 度角之路徑圖 . . . . . . . . . . . . . . . . . . . . . . . 49 4.27 直線環境傾斜 30 度角之路徑圖 . . . . . . . . . . . . . . . . . . . . . . 50 4.28 直線環境正向 0 度角 SA 變異量之分布 . . . . . . . . . . . . . . . . . . 51 4.29 直線環境傾斜 30 度角 SA 變異量之分布 . . . . . . . . . . . . . . . . . 52 4.30 實測影像架設之矩形環境 . . . . . . . . . . . . . . . . . . . . . . . . . . 53. vii.

(9) 4.31 無障礙物之環境 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 4.32 斜面之環境 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 4.33 障礙物之環境. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54. 4.34 無障礙物環境路徑圖 - 轉角 . . . . . . . . . . . . . . . . . . . . . . . . 55 4.35 無障礙物環境路徑圖 - 直線 . . . . . . . . . . . . . . . . . . . . . . . . 56 4.36 無障礙環境 SA 變異量之結果 . . . . . . . . . . . . . . . . . . . . . . . 57 4.37 斜面環境路徑圖 - 斜面轉角 . . . . . . . . . . . . . . . . . . . . . . . . 58 4.38 斜面環境路徑圖 - 轉角 . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 4.39 斜面環境 SA 變異量之結果 . . . . . . . . . . . . . . . . . . . . . . . . 60 4.40 障礙物環境路徑圖 - 兩障礙物間 . . . . . . . . . . . . . . . . . . . . . . 61 4.41 障礙物環境 SA 變異量之結果 . . . . . . . . . . . . . . . . . . . . . . . 62 4.42 障礙物環境路徑圖 - 轉角 1 . . . . . . . . . . . . . . . . . . . . . . . . . 63 4.43 障礙物環境路徑圖 - 轉角 2 . . . . . . . . . . . . . . . . . . . . . . . . . 64. viii.

(10) 表目錄 3.1 LeftSonar1 距離 - 近 . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 3.2 LeftSonar1 距離 - 中 . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 3.3 LeftSonar1 距離 - 遠 . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 3.4 FrontSonar1 距離 - 近 . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 3.5 FrontSonar1 距離 - 中 . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 3.6 FrontSonar1 距離 - 遠 . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 4.1 參數與誤差之關係 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 4.2 設定參數 Q 之平均絕對誤差結果 . . . . . . . . . . . . . . . . . . . . . 39 4.3 設定參數 R 之平均絕對誤差結果 . . . . . . . . . . . . . . . . . . . . . 42 4.4 卡爾曼濾波與區間型權重卡爾曼濾波參數設定之結果 . . . . . . . . . . . 46 4.5 直線環境正向 0 度角 SA 變異量之結果 . . . . . . . . . . . . . . . . . . 51 4.6 直線環境傾斜 30 度角 SA 變異量之結果 . . . . . . . . . . . . . . . . . 52 4.7 簡單環境統整數據 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 4.8 無障礙物環境 SA 變異量之結果 . . . . . . . . . . . . . . . . . . . . . . 57 4.9 斜面環境 SA 變異量之結果 . . . . . . . . . . . . . . . . . . . . . . . . 60 4.10 障礙物環境 SA 變異量之結果 . . . . . . . . . . . . . . . . . . . . . . . 62 4.11 複雜環境統整數據 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65. ix.

(11) 第1章 緒論 1.1 研究背景與動機 近年來機器人領域技術發展一日千里 , 相關技術及研究皆因應需求而有許多嶄新的 突破 , 不論是在保全 、 居家照護 、 工業應用 、 軍事與育教娛樂等方面 , 徹底改變人們對 機器人既有的思維與印象 , 在生活中則無處不見仰賴機器人技術的應用 。 而機器人定義 範圍廣泛 , 其中常見的智慧型機器人 (intelligent robot) 是一種多功能的自動化機械設 備 , 結合著多種感應器技術與人工智慧等技術運用 , 進而使設備自主式執行各項任務 。 其 中避障導航技術尤其重要 。 在未知的環境下 , 唯有使機器人透過超音波 [1, 2, 3] 、 紅外 線 [4, 5, 6, 7] 、 雷射 [8, 9, 7] 或影像 [10, 8, 7] 等感應器設備提供之資訊 , 分析判斷自我 認知本身所處的環境狀態 , 透過驅動致動器 (actuator) 以控制機器人做出相對應適當的 動作 , 才能使機器人自主性地達成避障導航及其他方面之應用 。 傳統機器人運動控制通常採用迴授控制 (feedback) 的方式 , 在固定環境因素下發展 出可靠得數學控制模型 。 然而 , 當控制對象的控制方式複雜或具有多輸入 、 多輸出 、 參 數時變性高和嚴重的非線性特性時 , 從環境所能獲得的訊息也會相對地減少與誤差產生 , 並且採用傳統的迴授控制難以獲的滿意的控制效果 。 為了解決前述的問題 , 近年來模糊 控制 (fuzzy control) 常使用於智慧型機器人控制上 , 此方式能得到較傳統回授控制有更 好的控制性能 。 然而任何感應器設備都會有其量測誤差存在 , 因此如何對感應器作誤差修正及濾波 雜訊 , 則是其中一重要問題與技術 。 卡爾曼濾波器 (Kalman filter, KF) [11, 12, 13] 是常 1.

(12) 用來作為訊號過濾方法之一 , 其中應用領域之廣泛包括導航 、 通訊 、 機器人控制 、 飛航 控制 、 影像邊緣檢測等 , 在軍事分面更被應用於雷達系統以及導彈追蹤等 。 卡爾曼濾波 器是種最小均分誤差下的線性濾波問題 , 其應用濾波器建立準確的動態及觀測系統模型 , 並且統計模型掌握各種隨機雜訊等條件 , 以獲得最佳雜訊濾波效果 。 其濾波方式可以利 用遞歸求解原理 , 能夠提供其更簡便得方式 , 從一系列資訊不完全即包含雜訊的系統中 , 推估計算動態系統的狀態模型 , 藉此獲得精確地估計解 。 具有不須記錄大量的歷史資料 來做預測 、 使之運算速度快及其透過適當的系統模型可提供穩定的數據輸出 。 若是描述 其系統動態特性參數的數學模型與雜訊的統計模型不準確 , 則無法真實的反映其物理過 程 , 將使得模型與獲得的量測值不匹配並導致濾波器產生發散 。 正因為卡爾曼濾波器其 濾波方式會依賴前一刻所濾波修正之結果 , 如果前一時刻對於劇烈變化數據修正使下一 時刻套用情況下 , 則會造成修正數據上的誤差 , 隨著時間拉長誤差不斷的累積 , 其數據 發散導致系統不穩定是可預期的 。 由於卡爾曼濾波器過於依賴系統模型 , 如系統參數與系統模型不符 , 則易導致修正 誤差產生 , 為此區間型卡爾曼濾波器 (interval Kalman filter, IKF) [14, 9] 便因應而 生 。 區間型卡爾曼濾波器是由卡爾曼濾波器應用區間概念延伸而來 , 故流程架構及方式 與卡爾曼濾波相同 , 差異在於區間型卡爾曼濾波器是以區間型態作運算處理 。 其濾波方 式是利用區間之特性彌補雜訊與系統參數造成系統模型強度的不足問題 , 透過區間值間 接篩選所需之濾波數據 , 進而修正提升濾波效果 。 但因為區間型卡爾曼濾波器為其區間 型態 , 在運算方面相較於卡漫濾波器來的複雜 , 考慮的參數變多 , 使之在取得適當的系 統模型上 , 依舊有其卡爾曼濾波器系統參數不適導致濾波後誤差大的問題存在 , 尤其在 不適當的系統模型下會導致更急遽的發散產生 。 這使得如何從區間值中獲得所需之資料 2.

(13) 資訊 , 則為其重要的一環問題 。. 1.2 研究目的與方法 本論文研究中將透過整合修改區間型卡爾曼濾波器及自訂模糊控制系統 , 使智慧型 機器人於各式環境中自主式的移動 , 以便能達到自主式避障導航之目的 。 研究中機器人 設備裝載多組超音波感應器模組 , 以擷取獲得機器人環境相關資訊 。 但在感應器模組與 模組間干擾 、 感應器本身的瑕疵與環境狀況等因素 , 皆會導致量測時有誤差產生 , 為此 將透過區間型卡爾曼濾波器來作修正 。 由於區間型卡爾曼濾波器具備區間的概念特性 , 對 於預測修正值具有上下界之區間值 , 使對於預測修正值更具有彈性的數據之應用 , 研究 中也藉由透過此區間型卡爾曼濾波器區間概念從中取得權重化數據 , 以解決本身區間型 卡爾曼濾波的發散情形 , 讓機器人在對於環境瞬間變化大導致數據差距性大的狀況時 , 有 更好的修正效果 , 在此稱之為區間型權重卡爾曼濾波器 (weight interval Kalman filtering, WIKF) 。 透過計算區間型權重卡爾曼濾波 : • 預測估計之區間值與共變異數區間值 。 • 區間型權重卡爾曼增益值 。 • 更新預測估計之區間值與共變異數區間值 。 • 修正預估區間值之上界與下界 。. 再藉由透過經區間型權重卡爾曼濾波器處理運算獲得之修正值作為模糊邏輯控制系統之 輸入 , 更進一步提升模糊控制精準度 , 使機器人行動控制於各式環境中移動上更穩定且 在避障導航路徑移動上更為平順 , 更順利的達成自主式移動避障導航 。 3.

(14) ࣴ‫୏ز‬ᐒ ࣬ᜢЎ᝘ᇆ໣ᆶ௖૸. යтǵፕЎϷਜᝤ 1. ьᅟୗᘠ‫ݢ‬ᏔำԄ 2. ኳጋ௓‫ڋ‬ำԄ 3. ୔໔ࠠ៾ख़ьᅟୗᘠ‫ݢ‬ᏔำԄ. ำԄኗቪ. ჴᡍ่݀ϩ‫݋‬ᆶ่ፕ. 圖 1.1: 研究進行流程圖. 1.3 研究流程與架構 本論文研究流程主要分為研究動機 、 相關文獻蒐集與探討 、 程式撰寫 、 實驗結果分 析與結論等部分 。 其研究進行流程如圖 1.1 。 • 研究動機 : 包含相關的研究背景 、 問題之範圍及定義 , 參考機器人導航 、 避障 、 控. 制及感應器誤差相關資料及文獻 , 將問題範圍設定在智慧型機器人自主式避障與導 航的控制方式 。 • 相關文獻蒐集與探討 : 蒐集與本研究相關之技術文獻 , 包含卡爾曼濾波器、 區間型. 卡爾曼濾波器、 模糊控制等 , 深入了解相關技術應用與優缺點 。 • 程式撰寫 : 撰寫卡爾曼濾波器程式 、 撰寫模糊控制程式 、 撰寫區間型權重卡爾曼濾. 波器程式 , 將實體機器人量測數據 。 • 實驗結果分析與結論 : 比較不同實驗環境下所獲得之效能及分析應用 。. 本論文之架構分為五章節簡述如下 : 第一章 『 緒論 』 , 說明本研究背景與動機 ; 第 二章 『 背景知識與相關文獻 』 , 簡述卡爾曼濾波器 、 區間型卡爾曼濾波器及模糊控制方 4.

(15) 式相關背景知識 ; 第三章 『 研究設計與方法 』 , 詳細說明機器人機構設計 、 方法設計及 完整的研究流程 ; 第四章 『 實驗與結果分析 』 , 根據設計之實驗架構設計 , 進行各種不 同環境與參數之實驗 , 並針對實驗結果分析及說明 ; 第五章 『 結論與未來展望 』 , 說明 與討論研究當中所產生之問題與限制 , 並相對提出未來可以研究及更深入的方向與構想 。. 5.

(16) 第2章 背景知識與相關文獻 本章簡述研究應用之相關技術 , 卡爾曼濾波器 、 區間型卡爾曼濾波器 、 模糊邏輯控 制及相關文獻探討 。. 2.1 卡爾曼濾波器 由西元 1960 年 , 匈牙利數學家 Rudolf Emil Kalman (R.E. Kalman) 發表論 文 [15] , 首次提出結合最小平方法及狀態空間方法對動態系統之線性濾波 , 以獲得最佳 化迴歸數據處理求解的演算法 , 即現今俗稱之卡曼濾波器 。 由於一般方法在推估預測方 面必須儲存大量的量測運算資料及濾波係數 , 致使其獲得較佳的預測值 , 但此舉增加系 統運算複雜性 。 然而卡爾曼濾波器利用其遞歸求解原理 , 能夠提供其更簡便的方式 , 從 一系列資訊不完全即包含雜訊的系統中 , 推估計算動態系統的狀態模型 , 藉此獲得精確 地估計解 。 此方法解決現今許多的問題並廣泛應用超過半世紀之久 , 應用領域之廣泛包 括導航 、 通訊 、 機器人控制 、 飛航控制 、 影像邊緣檢測等 , 在軍事方面更被應用於雷達 系統以及導彈追蹤等 。 在此介紹離散型卡爾曼濾波器 (discrete Kalman filter) 空間之最佳估測狀態及其基 本原理 。 其中 , • Xk : 為系統在時刻 k 之狀態向量 (state vector) 且為 N × 1 矩陣 , N 為欲預測. 之個數 。 • Zk : 為系統在時刻 k 之量測向量 (measurement vector) 且為 N × 1 矩陣 。 6.

(17) • Wk : 為系統在時刻 k 之狀態雜訊且為 N × 1 矩陣 。 • Vk : 為系統在時刻 k 之量測雜訊且為 N × 1 矩陣 。 • Ak : 為系統在時刻 k 至 k + 1 之狀態轉移矩陣 (state transition matrix) 且為 N × N 矩陣 。 • Hk : 為系統在時刻 k 之轉換矩陣 (measurement matrix) 且為 N × N 矩陣 。 • Bk : 為系統在時刻 k 之轉換矩陣 (measurement matrix) 且為 N × N 矩陣 。 • Qk : 為系統雜訊之共變異數矩陣且為 N × 1 矩陣 。 • Rk : 為量測雜訊之共變異數矩陣且為 N × 1 矩陣 。 ˆ − 為未更新之預估值且為 N × 1 矩陣 。 • X k ˆ k 為更新之預估值且為 N × 1 矩陣 。 • X • Pˆk− 為未更新之共變異數矩陣且為 N × N 矩陣 。 • Pˆk 為更新之共變異數矩陣且為 N × N 矩陣 。 • Kk : 為卡爾曼濾波器在時刻 k 之增益值且為 N × 1 矩陣 。 • I : 為單位 N × N 矩陣 。 • ˆ : 為系統之預估狀態 。 •. −. : 為系統之未更新之狀態 。. 7.

(18) 假設離散系統狀態模型及量測狀態模型分別為 :. Xk+1 = Ak Xk + Bk Wk. (2.1). Z k = H k Xk + V k. (2.2). 其中公式(2.1) 、 公式 (2.2) 中系統雜訊 (Wk ) 與量測雜訊 (Vk ) 均為獨立互不相關 , 零均 值 (zero mean) 的常態分布高斯白雜訊 (Gaussian white noise) , 即為 E[Wk VkT ] = 0. 系統雜訊之共變異數矩陣 (covariance matrix) Qk 為 :      0, j= 6 k T E[Wk Wj ] =     Qk , j = k 與量測雜訊之共變異數矩陣 (covariance matrix) Rk 為 :      0, j 6= k T E[Vk Vj ] =     Rk , j = k. (2.3). (2.4). (2.5). ˆ − , 其中 ‘ˆ’ 表示為系統在時刻 k 之預估 假設在系統時刻 k 之前狀態程序有預估值為 X k. 狀態 , ‘. −. ’ 表示為系統在時刻 k 之未更新之狀態 。. 其假設定義預測誤差為 : ˆ− e− k = Xk − Xk. (2.6). −T ˆ− T ˆ− Pˆk− = E[e− k ek ] = E[(Xk − Xk )(Xk − Xk ) ]. (2.7). 預測誤差之共變異數矩陣為 :. 8.

(19) ˆ − 來修正時刻 k 之更新預估值 , 透過該時刻 k 之實際量測值與時刻 k 之未更新預測值 X k ˆ k 更新之預測值與尚未決定之卡爾曼增益值因子 , 其表示如公式 (2.8) 。 其計算中包含 X ˆ − ) 若為零 , 即表示系統模型預測與實際模型一致 , 故信賴其時刻 k 之 假設 (Zk − Hk X k. 預測結果 。 ˆk = X ˆ − + Kk (Zk − Hk X ˆ −) X k k. (2.8). 其假設定義更新預測誤差為 : ˆk ek = Xk − X. (2.9). 更新預測誤差之共變異數矩陣為 : ˆ k )(Xk − X ˆ k )T ] Pˆk = E[ek ek T ] = E[(Xk − X ˆ − + Kk (Zk − Hk X ˆ − )))(Xk − (X ˆ − + Kk (Zk − Hk X ˆ − )))T ] = E[(Xk − (X k k k k ˆ − ) − Kk Vk )((I − Kk Hk )(Xk + X ˆ − ) − Kk V k ) T ] = E[((I − Kk Hk )(Xk + X k k = (I − Kk Hk )Pˆk− (I − Kk Hk )T + Kk Rk Kk (2.10). 由於更新預測誤差之共變異數矩陣之對角線元素為時刻 k 之狀態均分誤差總和 , 藉由微 分方式求得其極值 , 將得出卡爾曼增益值 Kk 使更新預測誤差之共變異數矩陣對角線元 素達最佳最小化 。 d(Pˆk ) E[ek ek T ] = d(Kk ) d(Kk ) ˆ − + Kk (Zk − Hk X ˆ − )))(Zk − Hk X ˆ − )] = 2E[(Xk − (X k k k ˆ − Z k − H k Xk X ˆ − + (X ˆ − )2 ] = 2E[Xk Zk − X k k k ˆ − Z k + H 2 (X ˆ − )2 ] − 2Kk E[Zk2 − 2Hk X k k k 9. (2.11).

(20) 其中公式 (2.11) 整理後如下 : ˆ − Z k − H k Xk X ˆ − + H k (X ˆ − )2 ] E[Xk Zk − X k k k Kk = − 2 ˆ− 2 2 ˆ E[Z − 2Hk X Zk + H (X ) ] k. k. k. (2.12). k. 將公式 (2.12) 拆解為兩部份作化簡 , 分子部分 : ˆ − Z k − H k Xk X ˆ − + H k (X ˆ − )2 ] E[Xk Zk − X k k k ˆ − (Hk Xk + Vk ) − Hk Xk X ˆ − + H k (X ˆ − )2 ] = E[Xk (Hk Xk + Vk ) − X k k k. (2.13). ˆ − Xk + H k ( X ˆ − )2 + (Xk − X ˆ − )Vk ] = E[Hk Xk2 − 2Hk X k k k. 因為公式 (2.13) 中量測誤差與量測雜訊各為獨立互不相關 , 故化簡為 ˆ − )Vk ] = E[e− Vk ] = 0 E[(Xk − X k k. (2.14). 由公式 (2.14) 代入公式 (2.13) 化簡得出 , ˆ − Xk + H k ( X ˆ − )2 ] E[Hk Xk2 − 2Hk X k k ˆ − Xk + ( X ˆ − )2 ] = Hk E[Xk2 − 2X k k = Hk E[(Xk − Xk− )2 ] 2 = Hk E[(e− k) ]. = Hk Pˆk−. 10. (2.15).

(21) 分母部分 : ˆ − Z k + H 2 (X ˆ − )2 ] E[Zk2 − 2Hk X k k k ˆ − (Hk Xk + Vk ) + H 2 (X ˆ − )2 ] = E[(Hk Xk + Vk )2 − 2Hk X k k k ˆ − Xk + H 2 ( X ˆ − )2 + V 2 + 2Hk (Xk − X ˆ − )Vk ] = E[Hk2 Xk2 − 2Hk2 X k k k k k (2.16) ˆ − Xk + Hk2 (X ˆ − )2 + Vk2 ] = E[Hk2 Xk2 − 2Hk2 X k k ˆ − Xk + ( X ˆ − )2 ] + E[+V 2 ] = Hk2 E[Xk2 − 2X k k k = Hk2 Pˆk− + Rk. 由公式 (2.15) 與公式 (2.16) 化簡後可得最佳增益值 Kk , 即所謂之卡爾曼濾波增益值 : Kk = (Hk Pˆk− )(Hk2 Pˆk− + Rk )−1. (2.17). 定義其預測誤差之共變異數矩陣 : ˆ − )(Xk − X ˆ − )T ] Pˆk− = E[(Xk − X k k ˆ k−1 )) = E[((Ak−1 Xk−1 + Bk Wk ) − (Ak−1 X (2.18) ˆ k−1 ))T ] ((Ak−1 Xk−1 + Bk Wk ) − (Ak−1 X ˆ − )2 + 2Ak−1Wk (Xk − X ˆ − ) + (Bk Wk )2 ] = E[A2k−1 (Xk−1 − X k−1 k. 其中公式 (2.18) 中量測誤差與系統雜訊各為獨立互不相關 , 故化簡為 ˆ − )] = 2Ak−1 E[Wk ek−1 ] = 0 E[2Ak−1 Wk (Xk − X k. (2.19). 由公式 (2.19) 代入公式 (2.18) 得出 , ˆ − )2 + (Bk Wk )2 ] Pˆk− = E[A2k−1 (Xk−1 − X k−1 ˆ − )2 ] + E[(Bk Wk )2 ] = A2k−1 E[(Xk−1 − X k−1 = A2k−1 Pˆk−1 + Bk Qk BkT 11. (2.20).

(22) 定義其更新預測誤差之共變異數矩陣 : ˆ k )(Xk − X ˆ k )T ] Pˆk = E[(Xk − X ˆ − ) − H k Kk X ˆ − + Kk Zk ))(Xk − ((X ˆ − ) − H k Kk X ˆ − + Kk Zk ))T ] = E[(Xk − ((X k k k k ˆ − )2 (1 − Hk Kk )2 − 2Kk Vk (Xk − X ˆ − )(I − Hk Kk ) + K 2 V 2 ] = E[(Xk − X k k k k (2.21). 其中公式 (2.21) 量測誤差與量測雜訊各為獨立互不相關 , 故化簡為 ˆ − )(I − Hk Kk )] E[2Kk Vk (Xk − X k ˆ − )] = 2Kk (I − Hk Kk )E[Vk (Xk − X k. (2.22). =0. 由公式 (2.22) 代入公式 (2.21) 化簡得出 , ˆ − )2 (I − Hk Kk )2 + K 2 V 2 ] Pˆk = E[(Xk − X k k k ˆ − )2 (I − Hk Kk )2 ] + E[Kk2 Vk2 ] = E[(Xk − X k (2.23) ˆ − )2 ] + K 2 E[V 2 ] = (I − Hk Kk )2 E[(Xk − X k k k = (I − Hk Kk )2 Pˆk− + Kk2 Rk. 再由公式 (2.17) 代入公式 (2.23) , 得出更新預測誤差之共變異數矩陣 。 Pˆk− (Hk − Hk2 Kk ) 2 2 ˆ− ˆ Pk = (I − Hk Kk ) Pk + Kk × Kk. (2.24). = (I − Hk Kk )Pˆk−. 以上描述為卡爾曼濾波器之詳細推導計算步驟 , 統整後可分為五大部分公式 , 如公式 (2.25)公式 (2.29) 、 重複之步驟作遞迴運算 , 則為卡爾曼濾波器之運作方式 , 其流程如圖 2.1 。. 12.

(23) Initial: ଵି ൌ ଴ ଵି ൌ ଴ Correct: ௞ ൌ ௞ି ௞் ௞ ௞ି ௞் ൅ ௞ ௞ ൌ ௞ି ൅ ௞ ௞ െ ௞ ௞ି ௞ ൌ

(24) െ ௞ ௞ ௞ି. Prediction: ௞ି ൌ ௞ ௞ିଵ ௞ି ൌ ௞ ௞ିଵ ்௞ ൅ ௞ ௞ ௞். ିଵ. 圖 2.1: 卡爾曼濾波器流程圖 • 預測部分 : ˆ − = Ak X ˆ k−1 X k. (2.25). Pˆk− = Ak Pˆk−1 ATk + Bk Qk BkT. (2.26). Kk = Pˆk− HkT (Hk Pˆk− HkT + Rk )−1. (2.27). ˆk = X ˆ − + Kk (Zk − Hk X ˆ −) X k k. (2.28). Pˆk = (I − Kk Hk )Pˆk−. (2.29). • 修正部分 :. 自 1960 年 R.E. Kalman 提出卡爾曼濾波研究後 , 其後學者則提出各種不同方式 之應用 , 以解決誤差提高精確度 。 像是學者 Caron, F. 等人在 2006 年提出藉由 GPS 及 IMU 量測的數據不藉由重新劃整濾波器的情況下對感應器進行整合 [16] , 設計過程 中感應器數據各自作模糊化 , 再透過權重計算融合方式 , 最後經由卡爾曼濾波器修正數 據得出精確估測值 。 學者 Sasiadek, J.Z. 等人在 2000 年提出運用融合超音波感應器與 測距儀之訊號 [1] , 透過增強式卡爾曼濾波器修正其數據 , 最後導入適應性模糊控制系統 使機器人精確地完成導航之動作 。 學者 Karambakhsh, A 等人於 2011 年提出利用雷射 13.

(25) 局部數據與超音波測距卡爾曼濾波器修正 [7] , 再由模糊控制使機器人於環境中達避障導 航之效果 。. 2.2 區間型卡爾曼濾波器 區間型卡曼濾波器為傳統卡爾曼濾波器演算法衍生而來 , 並無加入或修改其傳統卡 爾曼濾波器計算架構模式 , 而是保留傳統卡爾曼濾波器之預測及修正方程式遞歸求解優 點 , 加入區間概念 , 藉由區間計算的方式 , 以獲得具有上下界之預估區間值 。 以下先簡 單介紹區間計算之方式 。 首先區間型卡爾濾波器中會應用區間值運算 , 為此先簡述基本區間四則運算之規則 。 假設 [x, x] 、 [x1 , x1 ] 、 [x2 , x2 ] 為區間值 , x 、 x1 、 x2 為下界 , x 、 x1 、 x2 為上界 , 且皆為實數 。 (1) 加法 : 將兩區間下界值相加、 上界值相加 , 得出新區間值的下上界值 。 [x1 , x1 ] + [x2 , x2 ] = [x1 + x2 , x1 + x2 ].. (2.30). (2) 減法: 將前項下界值減後項上界值 , 得出新區間下界值 ; 將前項上界值減後項下界. 值 , 得出新區間上界值 。 [x1 , x1 ] − [x2 , x2 ] = [x1 − x2 , x1 − x2 ].. (2.31). (3) 乘法: 將前後兩區間上下界做四種相乘組合 , 取最小值為新區間下界值 , 最大值為新. 區間上界值 。 [x1 , x1 ] · [x2 , x2 ] = [x, x] 14. (2.32).

(26) x = min{x1 x2 , x1 x2 , x1 x2 , x1 x2 },. (2.33). x = max{x1 x2 , x1 x2 , x1 x2 , x1 x2 }.. (2.34). (4) 除法: 將前後兩區間上下界做相除組合 , 取最小值為新區間下界值 , 最大值為新區間. 上界值 。 [x1 , x1 ]/[x2 , x2 ] = [x1 , x1 ] · [x2 , x2 ]−1. (2.35). 假設離散區間系統之區間狀態模型及區間量測狀態模型分別如下 : • XkI : 為系統在時刻 k 之區間狀態矩陣且為 N × 1 之矩陣 , N 為欲預測之個數 。 • ZkI : 為系統在時刻 k 之量測區間且為 N × 1 之矩陣 。 • WkI : 為系統在時刻 k 之區間狀態雜訊且為 N × 1 之矩陣 。 • VkI : 為系統在時刻 k 之量測區間雜訊且為 N × 1 之矩陣 。 • AIk : 為系統在時刻 k 至 k + 1 之區間狀態轉移矩陣且為 N × N 之矩陣 。 • BkI : 為系統在區間狀態轉移矩陣且為 N × N 之矩陣 。 • HkI : 為系統在時刻 k 之轉換區間矩陣且為 N × N 之矩陣 。 • BkI : 為系統在時刻 k 之轉換區間矩陣且為 N × N 之矩陣 。 ˆ − )I : 為系統在時刻 k 未更新之預估區間矩陣且為 N × 1 矩陣 , • (X k ˆ k )I : 為系統在時刻 k 更新之預估區間矩陣且為 N × 1 矩陣 , N 為欲預測之個 • (X. 數。 15.

(27) • Qk : 為系統在時刻 k 之系統誤差之變異數矩陣為 N × N 矩陣 。 • Rk : 為系統在時刻 k 之量測誤差之變異數矩陣且為 N × N 矩陣 。 • (Pˆk− )I : 為系統在時刻 k 之未更新預測誤差共變異數區間矩陣且為 N × N 矩陣 。 • (Pˆk )I : 為系統在時刻 k 之更新預測誤差共變異數區間矩陣且為 N × N 矩陣 。 • KkI : 為區間型卡爾曼濾波增益區間矩陣且為 N × N 矩陣 。. I XkI = AIk Xk−1 + BkI WkI. (2.36). ZkI = HkI XkI + VkI. (2.37). 區間型卡爾曼濾波器矩陣中每個元素皆為一區間值 , 以下為區間型卡爾曼濾波器之 五大部分 : 如公式(2.38)-公式 (2.42) 、 重複之步驟作遞迴運算 , 則為區間型卡爾曼濾波 器之運作方式 , 其流程如圖 2.2 。 • 預測部分 : I ˆ − )I = AI X ˆ k−1 (X k. (2.38). I (Pˆk− )I = AIk Pˆk−1 (AIk )T + BkI Qk (BkI )T. (2.39). KkI = (Pˆk− )I (HkI )T [HkI (Pˆk− )I (HkI )T + Rk ]−1. (2.40). ˆ I = (X ˆ − )I + K I (Z I − H I (X ˆ − )I ) X k k k k k k. (2.41). PˆkI = (I − KkI HkI )(Pˆk− )I. (2.42). • 修正部分 :. 16.

(28) Initial: ଴ூ ǡ ଴ூ Correct: Prediction: ூ ூ ௞ି ൌ ூ௞ ௞ିଵ ௞ି. ூ. ூ ൌ ூ௞ ௞ିଵ ்௞. ூ. ൅ ௞ூ ௞ ௞். ௞ூ ൌ ௞ି. ூ. ௞். ௞ூ ൌ ௞ି. ூ. ൅ ௞ூ ௞ூ െ ௞ூ ௞ି. ூ. ௞ூ ௞ି. ூ. ௞ூ ൌ

(29) െ ௞ூ ௞ூ ௞ି. ூ. ூ. ௞். ିଵ. ൅ ௞ . ூ. ூ. 圖 2.2: 區間型卡爾曼濾波器流程圖 區間型卡爾曼濾波器自提出至今 , 其後學者則提出各種不同方式之應用 , 其大部分 都是為解決傳統卡爾曼濾波器系統參數不易調整導致預測誤差的問題 , 以解決提高預測 之精確度 。 學者 Kai-Wei 於 1997 年提出區間型卡曼濾波器 [14] , 相較於傳統卡爾曼 濾波器 , 並無加入其他複雜的數學計算分析或修改其計算架構模式 , 而是保留傳統卡爾 曼濾波器之預估及修正方式之優點 , 藉由區間型卡爾曼濾波之區間概念特性 , 取得具上 下界之預估區間值 , 從中獲得更佳的估計結果 。 學者 Y. feng MA 等人在 2010 年提出 GPS 及 IMU 量測的數據藉由區間型卡爾曼濾波器做修正 [9] , 使其導航系統設備精準. 度提高 。 學者 Siouris, G.M. 於 1997 年提出增強式區間型卡爾曼濾波器應用於導彈系 統 [17] , 此方法相對於傳統之增強式卡爾曼濾波器 , 在不確定及非線性的系統中有其修 正效果 。. 2.3 模糊邏輯控制 模糊理論是由美國加州柏克萊大學自動控制學家札德教授 (Lotfali Askar Zadeh) 於 1965 年在資訊與控制學術期刊上提出的模糊集合 (fuzzy sets) 理論 [18] 延伸而來之概. 念 , 用來表現某些無法明確定義的問題 , 尤其是在表達人類語言特有的模糊性方面頗有. 17.

(30) ኳጋ‫ޕ‬᛽৤ (fuzzy knowledge base) ኳጋϯ (fuzzification). ኳጋ௢ፕЇᔏ (fuzzy inference engine). ှኳጋϯ (defuzzification). ‫ڙ‬௓‫س‬಍ (control system). 圖 2.3: 模糊理論架構圖 成果 [19] 。 此方式有效的改善一般傳統二值邏輯描述處理問題的缺點 , 更能將人類特有 模糊思考的方式化為數學模型方便運行於電腦 , 在人腦與電腦之間架設一溝通橋梁 。 模 糊理論發展至今已半世紀應用領域相當廣泛 , 舉凡人工智慧 、 自動控制 、 氣象預報 、 圖 像識別 、 類神經網路 、 醫療診斷等 [20, 8] , 造就了所多突破性的研究及發展 。 模糊控制則是運用模糊理論為基礎 , 應用於人工智慧控制系統上的其中一種 , 其控 制方式根據經驗與知識形成 , 主要基本架構由模糊化 (fuzzification) 、 模糊知識規則庫 (fuzzy knowledge base, FKB) 、 模糊推論引擎 (fuzzy inference engine, FIE) 及解模糊. 化 (defuzzification) 四個基本單元所組成 , 以下將對每個部份作說明 , 其架構如圖 2.3 。 • 首先介紹模糊理論模糊化之模糊集合 , 以下是常見的一種表示式 , 其中 A 為論域. 中的一個模糊集合 , x 為論域中之元素 , µA (x) 為模糊集合 A 之歸屬函數 , U 為 論域 。. A = {(x, µA (x))|x ∈ U}. (2.43). 歸屬函數為模糊集合所採用的表示函數 , 其值介於 0 至 1 之間 , 可以描述模糊集合 的性質 , 對於模糊集合來進行量化 , 並透過歸屬函數即可利用精確的數學方法處理 18.

(31) 1. 1. 0. ߤ஺ ‫ݔ‬. ߤ஺ ‫ݔ‬. ߤ஺ ‫ݔ‬. a. b. c. (a) 三角型歸屬函數. 0. 1. a. b. c. (b) 高斯型歸屬函數. 0. ab. cd. (c) 梯型歸屬函數. 圖 2.4: 模糊歸屬函數 模糊或是界線較不明確的事物 。 常見的連續型歸屬函數 , 有三角形 、 高斯型 、 梯形 如圖 2.4 等歸屬函數 。 • 模糊知識規則庫是模糊理論核心結構 , 模擬人類思考並決策判斷的能力 , 其主要作. 為判斷模糊輸出之依據 。 在模糊知識規則庫中之規則 , 主要是基於專家所自行定義 而成並以語意呈現 , 如下 : Rn : if X is α and Y is β then Z is γ.. 上式中 Rn 為規則庫中其中一項規則 , if 為判斷語意條件是否成立 , then 則為判 斷符合條件之推論結果 。 在此 X 、 Y 為模糊控制系統的輸入變數 , 通常為被觀測 之對象 ; 而 Z 則為模糊系統中的輸出變數 , 主要用來控制受控系統狀態 。 規則中 α 、 β 與 γ , 為透過語意表達之模糊概念 , 例如 : 高低 、 快慢 、 亮暗之定義等 , 這. 些都是較為主觀意識且不易以數據呈現 , 故在此利用歸屬函數定義以呈現其歸屬程 度 。 例如 : 左側車距分為 “遠” 與 “近” , 右側車距分為 “遠” 與 “近” , 輪轉向分為 “左轉” 、 “直走” 與 “右轉” 。 而當模糊系統輸入或輸出變數增加時 , 其相對的組合. 模糊規則也會隨之增加 。. 19.

(32) • 模糊推論引擎是根據模糊規則與給予的推導結論 , 將模糊關係作合成之運算 , 常見. 的方式有以下兩種 : – 最大-最小合成 (Max-Min operation) :. µB (y) = max[min(µA (x), µA→B (x, y))] x. (2.44). – 最大乘積合成 (Max-product operation) :. µB (y) = max[(µA (x)·µA→B (x, y))] x. (2.45). 其中以 ‘最大-最小合成法’ 為常見使用方法 , 其計算簡單且有效率 , 故本研究採用 之。 • 解模糊化主要目的在於將模糊理論的結果轉換為明確值 , 進而控制授控系統 , 解模. 糊化與模糊化相反 。 而模糊化須符合具有意義及其合理性 、 運算簡單使模糊控制系 統運作執行效率高 、 模糊集合變化時 , 明確值位置之變化不得過大 。 目前較常用解 模糊化方法有重心法 (center of gravity, COG) 及最大均值法 , 其中重心法為自動 控制領域最常見之方法 , 亦為本研究所採用之方法 。 重心法主要是在求出將模糊推 論所得之歸屬函數合成後之面積重心位置 , 並以其對應輸出操作量之位置 。 其公式 表示為 :. ∗. y =. PP. i=1 P P. µB (yi ) · yi. i=1. µB (yi ). (2.46). 公式中 yi 為第 i 控制規則所對應之輸入歸屬函數歸屬值 , µB (y) 為控制規則所對 應之輸出歸屬函數歸屬值 。 20.

(33) 模糊理論從提出至今以應用於許多不同領域上 , 至今一直都是個熱門的話題 。 學者 M.Norouzi, A 等人在 2009 年提出藉由雷射與超音波量測數據融合 [21] , 因為雷射於. 鏡面或曲面數據誤差大 , 故藉超音波融合以提供更精準之數據 , 其數據融合後再經模糊 控制系統做輸出 , 使機器人於避障導航之動作上更趨穩定 。 學者 V. Sumramanian 等 人在 2009 年提出藉由雷射、 影像與 IMU 等設備資料經卡爾曼濾波器修正後 [8] , 再由 模糊邏輯控制系統得出相對應動作 , 使機器行駛於果園中央走道 , 以便於自動採收果實 。 學者 Yong Duan 等人在 2005 年提出一種解決機器人在未知環境之自動導航方法 [20] , 透過結合模糊邏輯與增強式學習機制 , 使機器人具備避障導航與撿拾物品之能力 。 學者 Shijing Wu 等人在 2008 年提出將模糊邏輯控制與基因演算法應用在小型機器人導航. 上 [22] , 以模糊邏輯控制產生初始化之歸屬函數 , 再使用基因演算法計算出最佳之歸屬 函數 , 最後由電腦模擬結果為之場地環境加以驗證 。. 21.

(34) 第3章 研究設計與方法 3.1 區間型卡爾曼濾波器之問題 研究為整合區間型卡爾曼濾波器與模糊控制技術於機器人避障導航 , 研究中超音波 感應設備存在有量測誤差 , 為降低各種因素所帶來的訊號誤差影響 , 應用區間型卡爾曼 濾波器來加以濾波訊號 , 利用其區間特性 , 使原本卡爾曼濾波預測修正值由單一數值 , 套 用區間概念 , 轉變為具有上下界之區間值 , 使之對於預測修正值更具有彈性及可靠性 , 以 下簡單說明區間型卡爾曼濾波器 : • X0I : 為歷史資料平均數分別加減一個歷史標準差形成的區間值矩陣 , 且為 N × 1. 矩陣 。 • P0I : 為初始預測誤差共變異數區間矩陣 , 且為 N × N 矩陣 。. 其運算流程 : • 步驟一 : 設定初始參數 X0I 、 P0I 、 AIk 、 BkI 、 HkI 、 Qk 、 Rk 。 • 步驟二 : 將初始參數區間狀態矩陣 X0I 代入公式 (2.38) 中計算 , 得出其未更新之 ˆ − )I 。 預估區間矩陣 (X k • 步驟三 : 將初始未更新預測誤差共變異數區間矩陣 P0I 、 初始參數 BkI 與 Qk 代入. 公式 (2.39) 中計算 , 得出其未更新預測誤差共變異數區間矩陣 (Pˆk− )I 。. 22.

(35) distance (cm). Real. Sensor. 45 40 35 30 0. 2. 4. 6. 8. 10 time (s). 12. 14. 16. 18. 20. 圖 3.1: 超音波數據 • 步驟四 : 將初始參數 HkI 、 Rk 與步驟三之更新預測誤差共變異數區間矩陣 (Pˆk− )I. 代入公式 (2.40) 中計算 , 得出其區間型卡爾曼濾波增益區間矩陣 KkI 。 ˆ − )I 、 步驟四之區間型卡爾曼濾波增 • 步驟五 : 將步驟二未更新之預估區間矩陣 (X k ˆ k )I 。 益區間矩陣 KkI 與 ZkI 代入公式 (2.41) 中計算 , 得出其更新之預估區間矩陣 (X • 步驟六 : 將初始參數 HkI 及步驟三未更新預測誤差共變異數區間矩陣 (Pˆk− )I 與步. 驟四區間型卡爾曼濾波增益區間矩陣 KkI 代入公式 (2.42) , 得出其更新預測誤差 共變異數區間矩陣 (Pˆk )I 。 重複以上描述步驟作遞迴運算 , 即為區間型卡爾曼濾波器之運作流程方式 。 其應用上會 有預測數據發散情況發生 , 如圖 3.2-圖 3.4 。 以下為區間型卡爾曼濾波發散狀態之三個 範例 , 範例中量測數據由超音波感應器於感應器量測限制下 , 隨機定點於感測器與障礙 物 38 cm 處量測得之 , 如圖 3.1 。 初始值參數設定 X0I = [34 36] 、 P0I = [35 35] 、 AIk = BkI = HkI = [1 1] 、 Qk = 0.0001 、 Rk = 0.001 。 • 範例一 : 使用區間型卡爾曼濾波器對超音波訊號作修正 , 經由其濾波器整個流程下. 來修正效果後 , 發現在使用初期區間型卡爾曼濾波器有發揮其修正之效果 , 但隨著 23.

(36) Real. Sensor. IKFLow. IKFUp. distance (cm). 1,000 500 0 -500. 0. 2. 4. 6. 8. 10. -1,000. 12. 14. 16. 18. 20. 16. 18. 20. time (s). 圖 3.2: 區間型卡爾曼濾波器之結果 Real. Sensor. IKFLow. IKFUp. distance (cm). 150 100 50 0 -50. 0. 2. 4. 6. 8. 10. 12. 14. time (s). 圖 3.3: 區間型卡爾曼濾波器參數調整之結果 時間拉長其區間值發散越來越大 , 雖有仍可能其上下界平均後修正效果依舊有其修 正效果存在 , 不過隨著筆數資料多 , 區間上下界有可能狀況為負無窮大與無窮大 , 屆時即失去區間型卡爾曼濾波之效果 , 如圖 3.2 。 • 範例二 : 由圖 3.2 可知在一段時間後即會其產生區間發散 , 為此範例二則作調整系. 統參數 Qk 與 Rk 觀察其區間卡爾曼濾波器系統模型改變後是否對於修正效果 , 其 參數 Qk = 0.0001 與 Rk = 0.01 。 經由參數修改後濾波並無提升修正效果 , 反而 在此參數下提早發生修正數據發散狀況 , 如圖 3.3 。 • 範例三 : 由圖 3.3 可知調整參數改變系統模型下依舊有發散之情況 , 為此範例三則. 改由設定門檻值 , 對此觀察區間型卡爾曼濾波是否因門檻值而變化達到修正效果 。 在設定上以超音波應用上最大值之數據 150 cm 為界線 , 因此門檻值區間為 [-150 24.

(37) Real. Sensor. IKFLow. IKFUp. distance (cm). 200 100 0 -100. 0. 2. 4. 6. -200. 8. 10. 12. 14. 16. 18. 20. time (s). 圖 3.4: 區間型卡爾曼濾波器設定門檻值之結果 150] 。 在濾波後低於 -150 cm 之值 , 強制被濾為 -150 cm , 相反的如濾波後大於 150 cm 之值 , 則強制濾為 150 cm 。 經由門檻值設定濾波後濾波並無提升修正效. 果 , 濾波後數據達門檻值後其數據並無預期修正變化 , 可知設立門檻值方式並有濾 波修正效果 , 如圖 3.4 。 由以上範例可觀察出區間型卡爾曼濾波器在應用上 , 有其幾點問題點存在 : • 直接應用直接應用區間型卡爾曼濾波器區間值有其修正效果 , 但隨時間區間值變大. 發散後就沒有其應用之意義 。 • 直接藉由其上一時刻所更新預估之值作為當時刻之預估值使用 , 會造成區間值越來. 越大 , 屆時區間值的存在就沒有其應用之意義 。 • 調整系統參數改變系統模型 , 對於區間型卡爾曼濾波器來說並沒有太大意義 。 • 門檻值對於發散區間值之修正沒有作用 , 濾波後依舊有發散區間產生 , 其修正後數. 據皆落於門檻值上並沒有產生修正變化 。. 25.

(38) 3.2 區間型權重卡爾曼濾波器 由上一節之範例可得知 , 區間型卡爾曼濾波器直接運用其上一刻更新預測區間值作 為下一刻之預測值運用 , 會有其發散區間產生 , 且更改系統參數與設定門檻值也未有其 修正效果產生 。 因此 , 由此得知應用區間型卡爾曼濾波器濾波 , 得作適當的區間值取值 處理才可得以作應用 , 為此本研究提出權重法以修正區間型卡爾曼濾波器之發散區間缺 點 , 稱之為區間型權重卡爾曼濾波器 。 其流程如下 : ˆ − )I : 為系統在時刻 k 未更新之預估區間下界值 。 • (Low X k ˆ − )I : 為系統在時刻 k 未更新之預估區間上界值 。 • (UpX k • (Low Pˆk− )I : 為系統在時刻 k 之未更新預測誤差共變異數區間下界值 。 • (UpPˆk− )I : 為系統在時刻 k 之未更新預測誤差共變異數區間上界值 。 • LowKkI : 為區間型權重卡爾曼濾波增益區間下界值 。 • UpKkI : 為區間型權重卡爾曼濾波增益區間上界值 。 ˆ k )I : 為系統在時刻 k 更新之預估區間下界值 。 • (Low X ˆ k )I : 為系統在時刻 k 更新之預估區間上界值 。 • (UpX • W Ikfpcek : 為未更新之預估區間與更新之預測區間差值 。 • (Low Pˆk )I : 為系統在時刻 k 之更新預測誤差共變異數區間下界值 。 • (UpPˆk )I : 為系統在時刻 k 之更新預測誤差共變異數區間上界值 。 26.

(39) ˆ k : 為更新之預估區間平均值 。 • Avg X • W Ikfcek : 為更新之預測區間差值 。 • α : 為穩定區間濾波之參數 , 由專家法制定 。 • 步驟一 : 設定初始參數值 X0I 、 P0I 、 AIk 、 BkI 、 HkI 、 Qk 、 Rk 、 LowX 、 UpX 。 • 步驟二 : 計算預測估計之區間值 。 將初始參數區間狀態轉移矩陣 AIk 代入公式 (3.1). 中計算 , 得出其預測估計區間矩陣 (Xˆ k− )I ˆ − )I = AI X ˆ− ˆI ˆ− (X k k−1 = [Low Xk UpXk ] k. (3.1). • 步驟三 : 計算預測估計之共變異數區間值 。 將初始參數 AIk 、 BkI 、 Qk 代入公式 (3.2). 中計算 , 得出其預測估計之共變異數區間矩陣 (Pˆk− )I I (Pˆk− )I = AIk Pˆk−1 (ATk )I + BkI QIk (BkT )I = [Low Pˆk− UpPˆk− ]. (3.2). • 步驟四 : 計算區間卡爾曼增益區間值 。 將初始參數 HkI 、 Rk 與公式 (3.2) 中之預. 測估計之共變異數區間值 (Pˆk− )I 代入公式 (3.3) 中計算 , 得出其區間形權重卡爾 曼增益區間矩陣 KkI KkI = (Pˆk− )I (HkT )I [HkI (Pˆk− )I (HkT )I + Rk ]−1 = [LowKk UpKk ]. (3.3). • 步驟五 : 計算更新預測估計之區間值 。 將公式 (3.2) 中預測估計之區間值與公式 (3.4). 中之區間卡爾曼增益區間值 KkI 代入公式 (3.4) 中計算 , 得出其更新預測估計之區 27.

(40) ˆI 間矩陣 X k ˆ I = (X ˆ − )I + K I (Z I − H I (X ˆ − )I ) = [Low X ˆ k UpX ˆk ] X k k k k k k. (3.4). • 步驟六 : 計算更新預測估計之共變異數區間值 。 將公式 (3.3) 中預測估計之共變異. 數區間值與公式 (3.4) 中之區間卡爾曼增益區間值 KkI 代入公式 (3.4) 中計算 , 得 出其更新預測估計之共變異數區間矩陣 PˆkI PˆkI = (I − KkI HkI )(Pˆk− )I = [Low Pˆk UpPˆk ]. (3.5). • 步驟七 : 計算估測區間值之上界、 下界 , 其方式如下 ˆ k , 其計算方式如下 , 首先由公式 (3.4) 中得出其更新之預估區間平均值 Avg X ˆ k = 2−1 (Low X ˆ k + UpX ˆk ) Avg X. (3.6). 接著再由公式 (3.4) 中取得更新之預測區間差值 W Ikfcek , ˆ k − UpX ˆk | W Ikfcek = |Low X. (3.7). 由公式 (3.1) 、 公式(3.4) 中取得未更新之預估區間與更新之預測區間差值 W Ikfpcek , ˆ − )I − X ˆI| W Ikfpcek = |(X k k. (3.8). ˆ − = Avg X ˆ k − α−1 ∗ W Ikfcek ∗ |Zk − Low X ˆ k | ∗ W Ikf −1 Low X k+1 pcek. (3.9). ˆ − = Avg X ˆ k + α−1 ∗ W Ikfcek ∗ |Zk − UpX ˆ k | ∗ W Ikf −1 UpX k+1 pcek. (3.10). 由以上步驟作遞迴式運算 , 即為本研究中應用濾波技術 , 如圖 3.6 。 透過套用前一節 所舉範例之數據與參數觀察其濾波效果 , 由圖 3.5 可明顯看出區間型權重卡爾曼濾波器 之濾波區間 , 原先的發散狀況已被改善 , 有效的壓抑於量測區間內 。 28.

(41) distance (cm). Real. Sensor. WIKFLow. WIKFUp. 44 42 40 38 36 34 32 0. 20. 40. 60. 80. 100 time (s). 120. 140. 160. 180. 圖 3.5: 區間型權重卡爾曼濾波器濾波之結果 Initial: ଴ூ ǡ ଴ூ ǡ ௞ ǡ ௞ ௞ூ ൌ ௞ െ  ିଵ ‫  כ‬௞ ‫ כ‬௞ െ ௞ ‫   כ‬௞ିଵ ூ   ௞ ൌ ௞ ൅  ିଵ ‫  כ‬௞ ‫ כ‬௞ െ  ௞ ‫   כ‬௞ିଵ. ௞ூ ൌ െ

(42) ௞ூ ௞ூ ௞ି ൌ ሾ ௞  ௞ ሿ. ௞ூ ൌ ௞ି. ூ. ௞ି. ூ. ൅

(43) ௞ூ ௞ூ െ ௞ூ ௞ି ൌ ௞  ௞. ூ. ௞ି. ூ. ூ. ூ ൌ ூ௞ ௞ିଵ ൌ ሾ௞ି  ௞ି ሿ. ். ூ ூ௞ ൅ ௞ூ ௞ூ ௞ூ ൌ ூ௞ ௞ିଵ ି ൌ ሾ ௞  ௞ି ].

(44) ௞ூ ൌ ௞ି. ூ. ௞். ். ூ. ூ. ௞ூ ௞ି ௞ூ ൌ ሾ

(45) ௞ 

(46) ௞ ሿ. ். ିଵ. ൅ ௞. 圖 3.6: 區間型權重卡爾曼濾波器流程圖. 3.3 區間型權重卡爾曼濾波與模糊邏輯控制系統之整合 本研究中超音波數據利用區間型權重卡爾曼濾波之值 , 作為控制系統之輸入 。 近年 來模糊控制常使用於機器人控制上 , 此方式能得到較傳統回授控制有更好的控制性能 , 藉 此研究整合區間型權重卡爾曼濾波器與模糊控制系統使機器人之移動避障導航動作更流 暢 。 研究中機器人移動平台的驅動分為左側兩輪 (LeftFront, LF; LeftBack, LB) 與右 側兩輪 (RightFront, RF; RightBack, RB) , 各連接至一獨立的 1 : 30 減速直流馬達 , 直流馬達可正轉與逆轉 , 藉由控制直流馬達之轉速差值以控制轉彎之幅度大小 。 直流馬. 29.

(47) 達控制參數如下描述 , 轉速參數 (speed argument, SA) , SA(ω) 表示為馬達 ω 的 SA 值 , SA(ω) 為 125 ≤ SA ≤ 375 。 SA(ω) 為 250 時 , 為輪轉速停止值 ; SA(ω) 為 125 ≤ SA < 250 時 , 為輪轉速逆轉值 ; SA(ω) 為 250 < SA ≤ 375 時 , 為輪轉速正轉. 值 ; SA(ω) 與轉速的對應關係如公式 (3.11) 。     F orward(ω) if SA(ω) ∈ [125, 250),      Stop(ω) if SA(ω) = 250,         Backward(ω) if SA(ω) ∈ (250, 375].. (3.11). 然而模糊訂定因問題而有所不同 , 本研究依據此問題特性 , 訂定相對適應的模糊控制相 關條件 , 其方式進行如下 : • 模糊變數 : 輸入變數為距離 (d) ; 輸出變數為輪轉速 (SA) 。 • 模糊項目 : 輸入項目距離 (d) 分為近 (near) 、 中 (middle) 、 遠 (far) ; 輸出項目. 輪轉速 (SA) 分為快速逆轉 (backward-fast, BF) 、 中速逆轉 (backward-middle, BM) 、 慢速逆轉 (backward-slow, BS) 、 停止 (stop, P) 、 慢速正轉 (forwardslow, FS) 、 中速正轉 (forward-middle, FM) 、 快速正轉 (forward-fast, FF) 。 • 模糊歸屬函數 : 採用連續之歸屬函數定義 , 其模糊歸屬函數如圖 3.7 。. 由於本研究總共採用九組超音波感應器模組 , 如圖 3.8 。 其左方超音波感應器模組 為 LeftSonar1 (LS1) 、 LeftSonar2 (LS2) 與 LeftSonar3 (LS3) , 右方超音波感應器 模組為 RightSonar1 (RS1) 、 RightSonar2 (RS2) 與 RightSonar3 (RS3) , 前方超音 波感應器模組為 FrontSonar1 (FS1) 、 FrontSonar2 (FS2) 與 FrontSonar3 (FS3) 。 故 模糊邏輯規則設定即有九個輸入值 , 各輸入有三種不同的狀態 , 輸出有五種不同的狀態 , 30.

(48) ߤ ݀. ߤ ݀. N. 1. M. F. ߤ ‫ݔ‬. N. 1. M. BF BM. F. 10. 20. 30. 60 ݀. 40. 40. 50. 65. 80. 100 ݀. (b) 前方模糊邏輯歸屬函數. (a) 左右邊模糊邏輯歸屬函數. P FS. FM. FF. 0. 0. 0. BS. 1. 125 130 160. 220 250 280 340 370 375 ܵ‫ܣ‬. (c) 輪轉速之模糊邏輯歸屬函數. 圖 3.7: 超音波感應器之模糊歸屬函數 FS1. 7. 8. FS2. FS3. 9 LS1. RS1. 5. LS2. RS2. 6. LS3. RS3. 1. 4. 2 3. (a) 超音波感應器模組編號. (b) 超音波模感應器架設示意圖. 圖 3.8: 超音波感應器示意圖 此情況下可能會產生出模糊邏輯規則至少為 527 種 , 這將會造成規則庫過多而不易訂定 之情況 。 因此 , 本研究中藉由使用自訂之過濾判斷挑選其合適度之組合定義規則 , 以減 少模糊規則庫之數量 。 首先 , 輸入值進入模糊規則前 , 先行判斷前方距離是否低於門檻 值 , 如低於設定之門檻值 , 則進入前方左邊或右邊之模糊邏輯規則庫 , 如未低於門檻值 , 則進入左或右之模糊規則庫中 。 經由上述之過濾後會保留只剩下三組超音波感應器進入 規則庫中作運算 , 其模糊規則制定 研究中以此過濾後之感應器數據作為模糊控制輸入 , 計算得出輪轉速之輸出量 , 如圖 3.9 。 研究方法中模糊規則即所相對應之動作 , 舉其左邊超音波進入模糊規則為例 : 如表 3.1表 3.3 , 表中為其左邊三個超音波之模糊規則及相對應之左右輪轉動作 , LW 為左輪轉之. 31.

(49) ղᘐ߻Бຯᚆࢂցλ‫ߐܭ‬ᘖॶ ࢂ. ց. ຾Ε߻Бղᘐೕ߾. ຾ΕѰѓղᘐೕ߾. ղᘐѰᜐຯᚆλ‫ܭ‬ѓᜐ. ղᘐѰᜐຯᚆλ‫ܭ‬ѓᜐ ࢂ ց. ց. ࢂ ߻БѰᜐኳጋೕ߾. ߻Бѓᜐኳጋೕ߾. Ѱᜐኳጋೕ߾. ѓᜐኳጋೕ߾. ᐒᏔΓ୏բ. 圖 3.9: 模糊規則流程 表 3.1: LeftSonar1 距離 - 近 L2\L3 (LW、RW). Near. Middle. Far. Near. FF, FS. FM, FS. FM, FM. Middle. FM, FM. FM, FS. FM, FS. FM, FM FM, FM. FM, FS. Far. 表 3.2: LeftSonar1 距離 - 中 L2\L3 (LW、RW). Near. Middle. Far. Near. FS, FM. FM, FM. FM, FM. Middle. FS, FM. FM, FM. FM, FM. FM, FM FM, FM. FM, FM. Far. 輸出動作 , RW 為右輪轉之輸出動作 。 其 (FM, FM) 為機器人直走之動作 , (FF, BS) 為機器人左轉之動作 。 如為其前方超音波進入模糊規則為例 : 如表 3.4-表 3.6 , 表中為其 前方三個超音波之模糊規則及相對應之左右輪轉動作 。 研究中模糊規則推論採用一般常見之最大-最小合成法運算求得輸出結果 。 其解模糊 化之輸出值採用重心法分別求出左 、 右輪之輪轉速 。 經由其模糊控制獲得其輪轉速後 , 機 器人則由此去做相對應之動作 , 如圖 3.10 。 透過區間型權重卡爾曼濾波器濾波超音波之 32.

(50) 表 3.3: LeftSonar1 距離 - 遠 L2\L3 (LW、RW). Near. Middle. Far. Near. FM, FM FM, FM. FM, FM. Middle. FM, FM FM, FM. FM, FM. Far. FM, FM FM, FM. FM, FM. 表 3.4: FrontSonar1 距離 - 近 F2\F3 (LW、RW). Near. Middle. Far. Near. FF, BS. FM, BS. FM, BS. Middle. FF, BS. FM, FS. FM, BS. Far. FF, BS. FM, BS. FB, BS. 表 3.5: FrontSonar1 距離 - 中 F2\F3 (LW、RW). Near. Middle. Far. Near. FF, BS. FM, BS. FM, BS. Middle. FM, BS. FM, FS. FM, BS. Far. FM, BS. FM, FS. FM, FM. 表 3.6: FrontSonar1 距離 - 遠 F2\F3 (LW、RW). Near. Middle. Far. Near. FF, BS. FM, BS. FM, BS. Middle. FM, FM FM, FM. FM, FM. Far. FM, FM FM, FM. FM, FM. 訊號 , 再將訊號作判斷進入模糊控制得到輸出輪轉速 , 以此方式來達成整合區間型權重 卡爾曼濾波器與模糊控制系統 。. 33.

(51) Ѱຬॣ‫ݢ‬ኳಔ’ 1 Ѱຬॣ‫ݢ‬ኳಔ’ 2 Ѱຬॣ‫ݢ‬ኳಔ’ 3. ຬॣ‫ݢ‬ኳಔ )Ѱǵ߻ǵѓ*. ߻ຬॣ‫ݢ‬ኳಔ’ 1 ߻ຬॣ‫ݢ‬ኳಔ’ 2. ୔໔ࠠ៾ख़ьᅟୗᘠ‫ݢ‬Ꮤ. ߻ຬॣ‫ݢ‬ኳಔ’ 3. ѓຬॣ‫ݢ‬ኳಔ’ 1 ѓຬॣ‫ݢ‬ኳಔ’ 2 ѓຬॣ‫ݢ‬ኳಔ’ 3. 圖 3.10: 模糊控制流程圖. 34. ᒡ Ε. ᒡ р ኳጋ௓‫ڋ‬. ፺ᙯೲ.

(52) 第4章 實驗與結果分析 4.1 機構設計與實驗架構 本研究目的為整合區間型權重卡爾曼濾波器與模糊控制系統 , 應用於機器人之導航 避障上 。 研究中採用之設備為四輪型智慧型機器人 , 機體前方 、 左側及右側各裝載三組 超音波感應器模組 , 總共九組 , 如圖 4.2 。 經由此九組超音波感應器模組作障礙物距離之 偵測 , 再透過模糊控制輪轉速 , 已達成機器人避障之效果 。 研究成果預期能有助於智慧 型機器人在避障導航上 , 提高低成本感應器其精確度 , 並穩定控制馬達轉速以達避障導 航 。 研究之實驗流程 , 如圖 4.1 : Step4: Robot active. Step1烉 Sonars data. Step3: Fuzzy control. Step2: Interval Kalman filter. 圖 4.1: 實驗流程圖. 其硬體部分所使用之設備有 Giada MI-HM65T 主機版 , 裝載以縮小機器人機體大 小 ; Intel(R) Core(TM) i5-2467M@1.60GHz 1.60GHz CPU , 作為快速運算之核心 ; SDRAM DDR3-1333 4GB 記憶體 , 以提供足夠之緩存空間 ; 其安裝 ADATA XM13 60GB ATA Device 硬碟 , 以提升開機之速度 。 而感測器採用利基超音波測距感應器模組 - Sonar A 進行障礙物距離之偵測 。 軟體部分所使用之作業系統為 Microsoft Windows 35.

(53) (b) 側視圖. (a) 正視圖. 圖 4.2: 機器人機構 7 Home PremiumService Pack 1 32 位元 , 以便於開發使用 。 其程式語言採用高階的 C 語言及利基公司所提供之 BASIC Commander 作撰寫 , 研究中透過 C 語言使之進. 行與硬體作溝通 。 在本研究實驗進行階段 , 為評估區間型卡爾曼濾波系統模型是否符合 之期望標準 , 以及各種不同條件下系統模型之差異性 , 以利誤差分析與後續調整 。 因此 , 實驗中將使用平均絕對誤差 (Mean Absolute Error, MAE) 來做為評估誤差標準 , 其計 算如下公式 (4.1) 所示 , n. n. 1X 1X MAE = |fi − yi | = |ei | n i=1 n i=1. (4.1). 公式 (4.1) 中 fi 為實測時之第 i 筆實際值 , yi 為實測時之第 i 筆預測值 , n 為實測時之 資料總和筆數 。 本研究中其平均絕對誤差越小 , 代表其預測效果越好 。. 4.2 實驗 A - 模擬卡爾曼濾波之效果與分析 在感應器使用上皆會有其儀器誤差或是量測誤差存在 , 本實驗採用定點實際量測超 音波感應器與障礙物之距離 , 觀察量測值與實際值之誤差 , 接著透過加入卡爾曼濾波技 術 , 觀察誤差修正效果 , 調整適用於實驗環境下機器人之系統模型狀態參數 Qk 、 Rk 。 36.

(54) 表 4.1: 參數與誤差之關係 Q. R. MAE. KF. 0.0001 0.0010. 1.07. KF (rand). 0.7637 0.5140. 2.40. Sensor. Real. KF. distance (cm). 44 42 40 38 36 34 32 0. 20. 40. 60. 80. 100 120 time (s). 140. 160. 180. 200. 圖 4.3: 卡爾曼濾波之適當參數 ˆ 0 = Pˆ0 = 35 , Ak = Bk = Hk = 1 , 藉 實驗中卡爾曼濾波器初始參數設定為 : X. 由專家法與隨機選取 Qk 與 Rk 參數調適出適用於研究之系統模型 , 圖 4.3 與圖 4.4 為 設定參數之結果 。 其中表 4.1 中 KF (rand) 為隨機選取卡爾曼濾波器 Qk 與 Rk 參數 , distance 為超音波感應器偵測障礙物距離 , 經卡爾曼濾波之值 ; time 為時間 , 單位為秒. 鐘 , 超音波每秒偵測接收一筆數據 。 根據實驗結果可觀察出 Qk 、 Rk 參數對於卡爾曼濾波器的應用有著相對應的影響 關係存在 , 從上述實驗結果圖 4.3 與圖 4.4 中可明顯發現 , 在 Qk = 0.0001 與 Rk = 0.001 參數系統模型下 , 卡爾曼濾波器對於誤差有其修正效果 , 且降低量測誤差數據 , 如. 圖 4.5 。. 37.

(55) Sensor. Real. KF (rand). distance (cm). 44 42 40 38 36 34 32 0. 20. 40. 60. 80. 100 120 time (s). 140. 160. 180. 200. 180. 200. 圖 4.4: 卡爾曼濾波之不適當參數 sensor error. KFerror (rand). KFerror. 6 error (cm). 4 2 0 -2 -4 -6 0. 20. 40. 60. 80. 100 120 time (s). 140. 160. 圖 4.5: 卡爾曼濾波之誤差結果 因此 , 研究實驗中更進一步設定不同參數 Qk 與 Rk 各六組 , 觀察其中 Qk 與 Rk 對 於誤差修正的影響 。 Qk 設定之參數與平均誤差 , 如表 4.2 與圖 4.6 。 由 Qk 參數實驗結 果表 4.2 可發現在此系統模型下 , 固定參數 Rk , 調整參數 Qk , 參數 Qk 愈大 , 所得預 測結果越差 。 由實驗中可觀察出若 Q 值愈大 , 則表示系統之動態方程受雜訊影響愈大 , 其結果顯示對於量測值更加依賴 , 使濾波器對過去預測之數據無參考利用依據 , 造成濾 波精確度降低 , 如圖 4.7-圖 4.12 。. 38.

(56) 表 4.2: 設定參數 Q 之平均絕對誤差結果 Q. R. MAE. Type1. 0.00001 0.00100. 0.53. Type2. 0.00010 0.00100. 1.07. Type3. 0.00100 0.00100. 2.16. Type4. 0.01000 0.00100. 3.25. Type5. 0.10000 0.00100. 3.52. Type6. 1.00000 0.00100. 3.55. MAE. error (cm). 4 3 2 1 0 Type1 Type2 Type3 Type4 Type5 Type6 ୖኧ Q. 圖 4.6: 設定參數 Q 之平均絕對誤差結果 Sensor. Real. KF. distance (cm). 44 42 40 38 36 34 32 0. 20. 40. 60. 80. 100 120 time (s). 140. 圖 4.7: 設定參數 Q - Type 1 之結果. 39. 160. 180. 200.

(57) Sensor. Real. KF. distance (cm). 44 42 40 38 36 34 32 0. 20. 40. 60. 80. 100 120 time (s). 140. 160. 180. 200. 160. 180. 200. 160. 180. 200. 圖 4.8: 設定參數 Q - Type 2 之結果 Sensor. Real. KF. distance (cm). 44 42 40 38 36 34 32 0. 20. 40. 60. 80. 100 120 time (s). 140. 圖 4.9: 設定參數 Q - Type 3 之結果 Sensor. Real. KF. distance (cm). 44 42 40 38 36 34 32 0. 20. 40. 60. 80. 100 120 time (s). 140. 圖 4.10: 設定參數 Q - Type 4 之結果. 40.

(58) Sensor. Real. KF. distance (cm). 44 42 40 38 36 34 32 0. 20. 40. 60. 80. 100 120 time (s). 140. 160. 180. 200. 160. 180. 200. 圖 4.11: 設定參數 Q - Type 5 之結果 Sensor. Real. KF. distance (cm). 44 42 40 38 36 34 32 0. 20. 40. 60. 80. 100 120 time (s). 140. 圖 4.12: 設定參數 Q - Type 6 之結果 由 Rk 參數實驗結果表 4.3 與圖 4.13 可發現在此系統模型下 , 相反的固定參數 Qk , 調整參數 Rk , 參數 Rk 越大 , 所得預測結果越佳 。 若 R 值越大 , 則表示卡爾曼增益值 變小 , 此舉使得量測值對於預測修正已無太大幫助 , 如圖 4.14-圖 4.19 。 因此由實驗可推測出 , 參數必須視系統模型決定 , 依據使用適合方式進行調整 , 亦 可增加卡爾曼濾波器之預估能力以縮小誤差 。 因此 , 藉由此實驗參數調整方式 , 研究中 由專家法調整出適用於本研究之機器人系統模型參數 Qk = 0.0001 、 Rk = 0.001 , 作 為後續實驗作為參考依據 。 而由於傳統的卡爾曼濾波器預測值只唯一值 , 在預測方面並. 41.

(59) 表 4.3: 設定參數 R 之平均絕對誤差結果 Q. R. MAE. Type1. 0.00010 0.00001. 3.25. Type2. 0.00010 0.00010. 2.16. Type3. 0.00010 0.00100. 1.07. Type4. 0.00010 0.01000. 0.53. Type5. 0.00010 0.10000. 0.33. Type6. 0.00010 1.00000. 0.25. error (cm). MAE 4 3 3 2 2 1 1 0 Type1 Type2 Type3 Type4 Type5 Type6 ୖኧ R. 圖 4.13: 設定參數 R 之平均絕對誤差結果 Sensor. Real. KF. distance (cm). 44 42 40 38 36 34 32 0. 20. 40. 60. 80. 100 120 time (s). 140. 圖 4.14: 設定參數 R - Type 1 之結果. 42. 160. 180. 200.

(60) Sensor. Real. KF. distance (cm). 44 42 40 38 36 34 32 0. 20. 40. 60. 80. 100 120 time (s). 140. 160. 180. 200. 160. 180. 200. 160. 180. 200. 圖 4.15: 設定參數 R - Type 2 之結果 Sensor. Real. KF. distance (cm). 44 42 40 38 36 34 32 0. 20. 40. 60. 80. 100 120 time (s). 140. 圖 4.16: 設定參數 R - Type 3 之結果. distance (cm). Sensor. Real. KF. 44 42 40 38 36 34 32 0. 20. 40. 60. 80. 100 time (n). 120. 140. 圖 4.17: 設定參數 R - Type 4 之結果 未提供最佳適合的系統模型之預測數值 , 為此我們提出另一種結合區間概念方式之區間 型卡爾曼濾波器 , 來改善濾波器之預測效果 。 43.

(61) Sensor. Real. KF. distance (cm). 44 42 40 38 36 34 32 0. 20. 40. 60. 80. 100 120 time (s). 140. 160. 180. 200. 160. 180. 200. 圖 4.18: 設定參數 R - Type 5 之結果 Sensor. Real. KF. distance (cm). 44 42 40 38 36 34 32 0. 20. 40. 60. 80. 100 120 time (s). 140. 圖 4.19: 設定參數 R - Type 6 之結果. 4.3 實驗 B - 模擬區間型權重卡爾曼濾波之效果與分析 藉由實驗 A 建立的系統參數套用至區間型卡爾曼濾波器 , 加入區間概念 , 應用區間 型權重卡爾曼濾波器之區間值 , 取得其中適當修正值作應用 , 進而從區間值中找出適用 於本研究之模型 , 以獲得較佳的濾波效果 。 研究中採用觀察法分析數據 , 由數學模型方 ˆ 0I = Pˆ0I = 式決定運用之預測值 。 其實驗中區間型權重卡爾曼濾波器初始參數設定為 : X [33 36] , AIk = BkI = HkI 單位區間矩陣 , 圖 4.20 為套用實驗 A 之卡爾曼濾波參數 Qk = 0.0001 與 Rk = 0.001 之結果 ; 圖 4.21 為套用實驗 A 之卡爾曼濾波隨機參數 44.

(62) distance (cm). Real. Sensor. WIKFLow. WIKFUp. 46 44 42 40 38 36 34 32 30 0. 20. 40. 60. 80. 100 120 time (s). 140. 160. 180. 200. 圖 4.20: 區間型權重卡爾曼濾波適當參數知結果. distance (cm). Real. Sensor. WIKF (rand) Low. WIKF (rand) Up. 46 44 42 40 38 36 34 32 30 0. 20. 40. 60. 80. 100 time (s). 120. 140. 160. 180. 圖 4.21: 區間型權重卡爾曼濾波不適當參數之結果 sensor error. WIKF (rand) error. WIKF error. 80. 140. 6 error (cm). 4 2 0 -2 -4 -6 0. 20. 40. 60. 100 120 time (s). 圖 4.22: 區間型權重卡爾曼濾波之誤差結果 Qk = 0.7637 與 Rk = 0.5140 之結果 。 45. 160. 180. 200.

(63) 表 4.4: 卡爾曼濾波與區間型權重卡爾曼濾波參數設定之結果 Q. R. MAE. KF. 0.0001 0.0010. 1.07. WIKF. 0.0001 0.0010. 0.94. KF (rand). 0.7637 0.5140. 2.40. WIKF (rand). 0.7637 0.5140. 2.40. Real. WIKF. Sensor. KF. distance (cm). 44 42 40 38 36 34 32 0. 20. 40. 60. 80. 100 120 time (s). 140. 160. 180. 200. 圖 4.23: 卡爾曼濾波與區間型權重卡爾曼濾波參數之結果 由實驗中可觀察到區間型權重卡爾曼濾波參數對於系統模型依舊有其影響如圖 4.22 , 因此研究中皆採用 Qk = 0.0001 與 Rk = 0.001 作為系統模型參數值 。 為此實驗中額 外觀察比較卡爾曼濾波與區間型權重卡爾曼濾波之濾波效果 , 而卡爾曼濾波器初始參數 ˆ 0 = Pˆ0 = 35 , Ak = Bk = Hk = I , Qk = 0.0001 , Rk = 0.001 。 區間 設定為 : X. 型權重卡爾曼濾波器初始參數為 : Xˆ 0I = Pˆ0I = [33 36] , AIk = BkI = HkI 單位區間矩 陣 , Qk = 0.0001 , Rk = 0.001 。 由表 4.4 可知傳統卡爾曼濾波器在 Qk = 0.0001 與 Rk = 0.001 參數設定下 , 平均絕對誤差為 1.07 , 但在相同 Qk = 0.0001 與 Rk = 0.001. 參數設定下 , 區間型權重卡爾曼濾波器平均絕對誤差為 0.94 , 由實驗結果可看出區間型 權重卡爾曼濾波器對於誤差之修正確實優於傳統卡漫濾波器 。 由圖 4.23 也可明顯看出在 46.

(64) 數據變化大時 , 區間型權重卡爾曼濾波器有其較佳之誤差修正效果 。. 4.4 實驗 C - 實測區間型權重卡爾曼濾波於簡單環境之效果與分析 由模擬實驗 B 中可看出區間權重型卡爾曼濾波器濾波修正效果優於傳統卡爾曼濾 波 , 在此實驗 C 將以實驗 B 之參數系統模型觀察機器人於實測環境中效果 , 比較在簡單 環境下區間型權重卡爾曼濾波器濾波效果是否同於模擬實驗 B 結果 。 實測環境設定在長 400 cm 、 寬 150 cm 、 高 60 cm 之保麗龍牆面與黑色地磚場地中 , 其環境場地上方架. 設一台無線網路攝影機 EdimaxIC-3115W , 如圖 4.24 。 經無線網路攝影機透過網路即 時錄影 , 紀錄機器人避障導航之移動軌跡 , 以供後續作分析與討論 。. 370cm. 60cm. 圖 4.24: 實測影像架設之直線環境. 實驗中分別設定針對正向 0 度角與傾斜 30 度角於直線場地兩種角度擺向作測試 , 如圖 4.25 。 經由實驗觀察對於角度差異 , 其濾波修正效果是否如模擬實驗中區間型權重 卡爾曼濾波器仍保有其優越性 。 實驗中初始參數設定為 :. 47.

數據

圖 3.3: 區間型卡爾曼濾波器參數調整之結果 時間拉長其區間值發散越來越大 , 雖有仍可能其上下界平均後修正效果依舊有其修 正效果存在 , 不過隨著筆數資料多 , 區間上下界有可能狀況為負無窮大與無窮大 , 屆時即失去區間型卡爾曼濾波之效果 , 如圖 3.2 。 • 範例二 : 由圖 3.2 可知在一段時間後即會其產生區間發散 , 為此範例二則作調整系 統參數 Q k 與 R k 觀察其區間卡爾曼濾波器系統模型改變後是否對於修正效果 , 其 參數 Q k = 0.0001 與 R k = 0.01 。 經
圖 3.4: 區間型卡爾曼濾波器設定門檻值之結果 150] 。 在濾波後低於 -150 cm 之值 , 強制被濾為 -150 cm , 相反的如濾波後大於 150 cm 之值 , 則強制濾為 150 cm 。 經由門檻值設定濾波後濾波並無提升修正效 果 , 濾波後數據達門檻值後其數據並無預期修正變化 , 可知設立門檻值方式並有濾 波修正效果 , 如圖 3.4 。 由以上範例可觀察出區間型卡爾曼濾波器在應用上 , 有其幾點問題點存在 : • 直接應用直接應用區間型卡爾曼濾波器區間值有其修正效果 , 但隨時間區
圖 3.5: 區間型權重卡爾曼濾波器濾波之結果  ௞ ି ூ ൌ  ௞ூ  ௞ିଵூ ൌ ሾ ௞ ି 			 ௞ ି ሿ  ௞ூ ൌ  െ  ௞ூ 
 ௞ூ  ௞ ି ூ ൌ ሾ ௞ 		 ௞ ሿ Initial:଴ூǡ଴ூǡ  ௞ ǡ  ௞௞ିூൌ௞ூ௞ିଵூ௞ூ்൅௞ூ  ௞ூ  ௞ூ ்ൌ ሾ௞ି			௞ି]  ௞ூ ൌ  ௞ ି ூ 
 ௞ ் ூ 
 ௞ூ 	  ௞ ି ூ 	 
 ௞ூ ் ൅  ௞ ିଵ ൌ ሾ
表 3.2: LeftSonar1 距離 - 中
+7

參考文獻

相關文件

Lange, “An Object-Oriented Design Method for Hypermedia Information Systems”, Proceedings of the Twenty-seventh annual Hawaii International Conference on System Sciences, 1994,

The scenarios fuzzy inference system is developed for effectively manage all the low-level sensors information and inductive high-level context scenarios based

Godsill, “Detection of abrupt spectral changes using support vector machines: an application to audio signal segmentation,” Proceedings of the IEEE International Conference

[16] Goto, M., “A Robust Predominant-F0 Estimation Method for Real-time Detection of Melody and Bass Lines in CD Recordings,” Proceedings of the 2000 IEEE International Conference

IEEE 1394 Controller IC、無線週邊控制晶片 Wireless Peripheral Controller IC、滑鼠控制晶片 Mouse Controller IC、鍵盤控制晶片 Keyboard Controller IC、掃描器控制晶片

Wells, “Using a Maze Case Study to Teach Object-Oriented Programming and Design Patterns,” Proceedings of the sixth conference on Australasian computing education, pp. Line, “Age

Harma, “Automatic identification of bird species based on sinusoidal modeling of syllables,” in Proceedings of IEEE International Conference on Acoustics, Speech,

Sun, “The Application of Role-Based Access Control in Workflow Management Systems”, Proceedings of IEEE International Conference on System, Man and Cybemetics, vol.6, pp.