• 沒有找到結果。

應用於室內巡邏之自主式輪型機器人適應性動態控制器設計與實現

N/A
N/A
Protected

Academic year: 2021

Share "應用於室內巡邏之自主式輪型機器人適應性動態控制器設計與實現"

Copied!
81
0
0

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

全文

(1)國立臺灣師範大學應用電子科技學系 碩士論文. 指導教授: 王偉彥博士 應用於室內巡邏之自主式輪型機器人適應性動態控 制器設計與實現 Design and Implementation of An Adaptive Dynamic Controller for An Autonomous Indoor Patrolling Wheeled Robot. 研究生:高裔峰 撰. 中 華 民 國 102 年 7 月.

(2) 應用於室內巡邏之自主式輪型機器人適應性動態控 制器設計與實現 學生:高裔峰. 指導教授:王偉彥. 國立臺灣師範大學應用電子科技學系碩士班. 摘. 要. 本文提出一種混合式智慧型演算法以實現輪型機器人於已知室內環境的巡邏任 務。首先,我們藉由 D* Lite 演算法決定輪型機器人從起點到終點的最佳路徑, 再由所提出的混合式智慧型控制器使得輪型機器人可以有效地達成路徑追蹤的 目的。此智慧型控制器可分成兩個部分,分別為運動學控制器以及 TSK 模糊控 制器。在運動學控制器方面,利用倒階控制法設計的控制器可以保證輪型機器人 的位置誤差與角度誤差將有效地趨近於零。此外,我們利用運動學控制器所得到 的速度及角速度當作 TSK 模糊控制器的參考訊號。藉由 TSK 模糊控制器,輪型 機器人的速度誤差與角速度誤差將會趨近於零。透過李普洛夫理論證明了此兩個 控制器是漸近穩定。本研究先透過電腦模擬證實了該方案的有效性與可行性。最 後,透過實驗驗證了該方法可以取得良好的效果。 關鍵字:輪型機器人、D* Lite 演算法、軌跡追蹤控制. -i-.

(3) Design and Implementation of An Adaptive Dynamic Controller for An Autonomous Indoor Patrolling Wheeled robot. student:Yi-Feng Kao. Advisors:Wei-Yen Wang. Institute of Applied Electronics Technology National Taiwan Noraml University. ABSTRACT. This thesis presents a hybrid intelligent algorithm to implement patrol tasks of a wheeled mobile robot (WMR) in a known indoor environment. First, we use D* Lite algorithm to determine the optimal path between the initial position and the destination. By using the proposed hybrid intelligent controller, we can efficiently accomplish the purpose of trajectory-tracking for a WMR. The intelligent controller is divided in two parts, which are kinematic controller and TSK fuzzy controller. The kinematic controller is designed by using a backstepping method. By using the kinematic controller, the position error and the angle error of the WMR efficiently converge to zero. Moreover, we use the linear and angular velocities obtained by the kinematic controller as the reference signals of the TSK fuzzy controller. Then the velocity error and the angular velocity error of the WMR converge to zero by using the TSK fuzzy controller. The asymptotic stability of kinematic and dynamic controllers is proven by Lyapunov theory. The effectiveness and the feasibility of the proposed scheme are verified by simulation results. Finally, experiments show that the proposed method can achieve good results.. Keywords: wheeled mobile robot, D* Lite algorithm, trajectory-tracking control.. -ii-.

(4) 誌. 謝. 此篇論文能夠順利完成,首先要感謝指導教授 王偉彥教授對學生 的用心指導,自大學專題時期直到上研究所後四年的時間,即便公務 繁忙,也會抽空來關心我們,也從老師身上學到了在實驗結束後,不 是只將實驗的結果畫出來就行,要從圖片中分析參數所代表的意義, 在此獻上最誠摯的謝意以及感激。在論文的修訂上亦感謝口試委員蘇 順豐教授、李祖添教授、陶金旺教授、李宜勳教授在百忙之中抽空來 參加口試,提供了許多如何使論文更完善的寶貴建議,令人受益匪淺。. 其次要感謝實驗室中的所有學長:宜勳學長、宜興學長、銘滄學長 與政沛學長的指導,從你們身上學到許多寶貴的人生知識。感謝同儕 奕涵與建凱以及幫忙拍攝影片的未來學弟勇志等,在研究所求學的過 程中的陪伴,在各方面協助我不少事情,讓我在實驗室的生活更加的 多采多姿。. 最後要感謝的就是我的家人。謝謝爸媽與爺爺奶奶的養育之恩, 你們的開明教育,能讓我無後顧之憂,沒有你們的辛勞,就沒有今天 的我。願與他們分享這份成果. -iii-.

(5) 目. 錄. 中文摘要 ............................................................................................................................... i 英文摘要 ............................................................................................................................. ii 誌. 謝 ............................................................................................................................ iii. 目. 錄 .............................................................................................................................iv. 圖 目 錄 .............................................................................................................................vi 第一章. 緒論 ................................................................................................................. 1. 1.1. 前言 .................................................................................................................. 1. 1.2. 文獻回顧 ......................................................................................................... 2. 1.3. 研究動機與目的 ............................................................................................ 3. 1.4. 論文架構 ......................................................................................................... 4. 第二章. 輪型機器人系統架構 .................................................................................. 6. 2.1. 輪型機器人硬體架構及規格 ..................................................................... 6. 2.2. 系統說明 ........................................................................................................ 7. 2.3. 通訊方式 ........................................................................................................ 8. 2.4. 電力與驅動系統 ........................................................................................... 8. 2.5. 聲納感測系統 ............................................................................................... 9. 第三章. 輪型機器人運動學控制器之設計 ...........................................................10. 3.1. 輪型機器人之運動學模型 ........................................................................10. 3.2. 運動學控制器 .............................................................................................11. 第四章. 輪型機器人自適應模糊 TSK 控制器設計 ............................................14. 4.1. 輪型機器人之動態模型 ............................................................................14. 4.2. TSK 模糊模型 ...........................................................................................15. 4.3. TSK 模糊控制器設計 ..............................................................................17. 第五章 5.1. 路徑規劃 ......................................................................................................23 實驗環境 ......................................................................................................23. -iv-.

(6) 5.2. D* Lite 演算法 .............................................................................................. 25. 5.3. 改良型 D* Lite 演算法 .............................................................................. 38. 第六章. 實驗與模擬結果 ........................................................................................... 41. 6.1. 模擬結果 ........................................................................................................ 41. 6.2. 實驗結果 ........................................................................................................ 45. 第七章. 結論 ................................................................................................................. 64. 參考文獻 .............................................................................................................................. 65 自. 傳 .............................................................................................................................. 69. -v-.

(7) 圖 目 錄. 圖 2-1. 機器人尺寸示意圖 ............................................................................................................6. 圖 2-2. 機器人外觀 ...........................................................................................................................7. 圖 2-3. 機器人系統架構 .................................................................................................................7. 圖 2-4. 機器人通訊方式 .................................................................................................................8. 圖 2-5. 機器人電力系統架構 .......................................................................................................8. 圖 2-6. 超音波系統 ...........................................................................................................................9. 圖 3-1. 輪型行動機器人 .............................................................................................................. 10. 圖 3-2. 位置誤差圖. 圖 4-1. 機器人在動態模型所用到的部分參數................................................................ 15. 圖 4-2. 平行分散補償概念 ......................................................................................................... 16. 圖 4-3. TSK 模糊控制器結構 ................................................................................................... 22. 圖 5-1. 師大 5 樓平面圖 .............................................................................................................. 24. 圖 5-2. 實驗環境 ............................................................................................................................. 24. 圖 5-3. 演算法選定中間點時周邊需加入開放列表中 8 格的示意圖 ................. 26. 圖 5-4. 從可行走區域到周邊任一格之代價 ..................................................................... 26. 圖 5-5. 從可行走區域到障礙物之代價 ............................................................................... 27. 圖 5-6. 從障礙物到障礙物之代價 ......................................................................................... 27. 圖 5-7. 初始化................................................................................................................................... 27. 圖 5-8. 將終點加入開放列表 .................................................................................................... 28. 圖 5-9. 計算點(0, 1)和(1, 0)之 RHS 值 ................................................................................... 28. ...................................................................................................................... 11. 圖 5-10. 計算點(1, 0). 圖 5-11. 計算點(2, 0)和(2, 1)之 RHS 值 ................................................................................ 29. 圖 5-12. 將大部分格子之 G 值與 RHS 值計算完 ............................................................. 30. 圖 5-13. 起點被計算到................................................................................................................. 30. 圖 5-14. 最後之規劃結果 ........................................................................................................... 31. .................................................................................................................... 29. -vi-.

(8) 圖 5-15. 機器人發現障礙物 ...................................................................................................... 31. 圖 5-16. 更新點(3, 3). .................................................................................................................... 32. 圖 5-17. 更新點(2, 3). .................................................................................................................... 32. 圖 5-18. 更新點(1, 3). .................................................................................................................... 33. 圖 5-19. 更改周邊各點代價 ...................................................................................................... 33. 圖 5-20. 計算點(2, 2). .................................................................................................................... 34. 圖 5-21. 計算點(2, 3). .................................................................................................................... 34. 圖 5-22. 更新點(2, 4). .................................................................................................................... 35. 圖 5-23. 將點(2, 3) 加入開放列表 ......................................................................................... 35. 圖 5-24. 計算點(1, 3). 圖 5-25. 更新點(0, 3)與(0, 4). 圖 5-26. 將點(1, 3)加入開放列表 ........................................................................................... 37. 圖 5-27. 計算點(5, 2). .................................................................................................................... 37. 圖 5-28. 更新點(1, 3). .................................................................................................................... 38. 圖 5-29. 路徑規劃結果................................................................................................................. 38. 圖 5-30. 場地示意圖 ...................................................................................................................... 39. 圖 5-31. 實驗走廊示意圖。(A)寬度為 200 公分之走廊、(B)寬度為 160 公分之. .................................................................................................................... 36 ................................................................................................... 36. 走廊 .................................................................................................................................................... 40 圖 5-32. 機器人在白色格子時周邊的代價 ....................................................................... 40. 圖 6-1. 機器人的實際路徑(藍色)與參考軌跡(紅色). 圖 6-2. 機器人 X 座標的誤差.................................................................................................... 42. 圖 6-3. 機器人 Y 座標的誤差.................................................................................................... 43. 圖 6-4. 機器人角度的誤差 ......................................................................................................... 43. 圖 6-5. 機器人的速度 ................................................................................................................... 44. 圖 6-6. 機器人的角速度 .............................................................................................................. 44. 圖 6-7. 控制器的整體架構 ......................................................................................................... 45. 圖 6-8. 機器人的實際路徑(紅色)與參考軌跡(藍色). -vii-. .................................................. 42. .................................................. 46.

(9) 圖 6-9. 機器人 X 座標的誤差.................................................................................................... 47. 圖 6-10. 機器人 Y 座標的誤差 ................................................................................................. 47. 圖 6-11. 機器人角度的誤差 ...................................................................................................... 48. 圖 6-12. 機器人的速度................................................................................................................. 48. 圖 6-13. 機器人的角速度 ........................................................................................................... 49. 圖 6-14. 位置示意圖 ...................................................................................................................... 50. 圖 6-15. 加入路徑規劃後控制器的整體架構 .................................................................. 50. 圖 6-16. 機器人的實際路徑(紅色)與參考軌跡(藍色). 圖 6-17. 機器人 X 座標的誤差 ................................................................................................. 51. 圖 6-18. 機器人 Y 座標的誤差 ................................................................................................. 52. 圖 6-19. 機器人角度的誤差 ...................................................................................................... 52. 圖 6-20. 機器人的速度................................................................................................................. 53. 圖 6-21. 機器人的角速度 ........................................................................................................... 53. 圖 6-22. 機器人的實際路徑(紅色)與參考軌跡(藍色). 圖 6-23. 機器人 X 座標的誤差 ................................................................................................. 55. 圖 6-24. 機器人 Y 座標的誤差 ................................................................................................. 55. 圖 6-25. 機器人角度的誤差 ...................................................................................................... 56. 圖 6-26. 機器人的速度................................................................................................................. 56. 圖 6-27. 機器人的角速度 ........................................................................................................... 57. 圖 6-28. 機器人的實際路徑(紅色)與參考軌跡(藍色). 圖 6-29. 機器人 X 座標的誤差 ................................................................................................. 58. 圖 6-30. 機器人 Y 座標的誤差 ................................................................................................. 58. 圖 6-31. 機器人角度的誤差 ...................................................................................................... 59. 圖 6-32. 機器人的速度................................................................................................................. 59. 圖 6-33. 機器人的角速度 ........................................................................................................... 60. 圖 6-34. 機器人的實際路徑(紅色)與參考軌跡(藍色). 圖 6-35. 機器人 X 座標的誤差 ................................................................................................. 61. -viii-. ............................................... 51. ............................................... 54. ............................................... 57. ............................................... 60.

(10) 圖 6-36. 機器人 Y 座標的誤差 ................................................................................................. 61. 圖 6-37. 機器人角度的誤差 ...................................................................................................... 62. 圖 6-38. 機器人的速度................................................................................................................. 62. 圖 6-39. 機器人的角速度 ......................................................................................... 63. -ix-.

(11) 第一章 緒論. 1.1. 前言 在近幾年中,輪型機器人被廣泛地運用在救災及地形偵測等任務,因為它可. 節省人力、提高工作的效率,同時可以在人們所不能抵達的危險地方完成工作任 務,降低意外的發生。輪型機器人可被用來執行各種任務,例如:地板清潔[1]、 巡邏[2]、和運送貨物[3]、自動輪椅[4]等。為了有效執行各種任務,機器人的軌 跡追蹤控制是必需的,經由此控制方法可以控制機器人,使它的動作追隨使用者 預期的路徑。我們首先決定期望的機器人移動路徑,再藉由控制器的設計,使機 器人盡可能的沿著預設路徑快速移動,此研究稱為機器人路徑追踪控制及機器人 速度控制。. 路徑規劃[5]主要用於決定一條路徑提供給機器人,使機器人可以從一起始點 的位置(一般為機器目前的位置)移動至目標的位置。在路徑規劃中,代價函數可 用來決定機器人的移動方向,最佳路徑的代價函數一般被設定為機器人從起點到 終點移動的最短路徑。就目前而言,A*、D* 與 D* Lite 演算法是被廣泛地使用 的路徑規劃法則[5, 6, 7]。A* 演算法透過排除許多明顯錯誤的路徑來增加演算法 的效率,因此規劃路徑的速度較快,但是所規劃的路徑却不一定為最短路徑。D* 演算法與 A* 演算法的主要區別為:在規劃路徑時,A* 可排除掉明顯錯誤的路 徑,規劃速度較快,而 D* 演算法則將大部分的路徑皆列入考慮,因此計算的時 間較長,但是在環境發生變動時,A* 演算法需要重新規劃路徑,而 D* 演算法 則可以直接修復路徑,動態規劃出新的機器人移動路徑。另外,D* Lite 演算法 是 D* 的簡化版本,與 D* 演算法大致相同,在環境發生變動時可以直接修復路 徑,但 D* Lite 演算法透過減少 D* 的參數,每一個格點比 D* 少了一項 back pointers,back pointers 指的是一個座標,記錄機器人路徑的下一個點為何,在路 徑規劃時會用到,而 D* Lite 規劃路徑時,並沒有使用 back pointers,透過選擇周 邊座標代價值最小的點為機器人的下一個座標以規劃路徑。 -1-.

(12) D* Lite 演算法較簡單易懂而且在程式執行時有較好的效率。. 1.2. 文獻回顧 機器人軌跡追蹤控制器主要可分為兩個控制策略:第一個控制策略為運動學. 控制器,另一策略則針對機器人動態模型設計之控制器。在[8, 9],作者僅基於機 器人的運動學設計了自適應性控制器。用於在運動學模型有未知參數存在的機器 人,自適應控制器的動態模型與未知參數可以透過反推法來設計,在[9]中,只有 提供模擬結果。上述的方法大多忽視機器人的動態方程式。但是當機器人高速運 動或有外部干擾的情況下,則必須將完整的機器人模型列入考慮,包括機器人的 運動學模型和動態模型[10]。在[10]中,作者使用適應控制器來克服外部干擾,此 論文在最後提供了模擬結果,但同樣缺少實驗結果。. De La Cruz 以及 Carelli [11] 提供了一種包括動態模型的方法,以速度和角速 度作為控制器的輸入,然而,如果參數錯誤或隨著時間大幅度的變化,控制器的 性能將會下降,因此如何調整參數就是一個重要的課題。文獻 [12] 提出了一個 兩階段的路徑追蹤控制器,其設計了一個滑動面,滑動模式控制可簡化輸入資訊, 具備強健性,此文章利用滑動模式控制用以消除系統的不確定性和外部干擾,但 訊號抖震的現象會導致控制力在兩數值中不斷切換,造成系統的不穩定,訊號抖 震現象可採用定義邊界層的方法來解決。在[13]中,作者提供了一個滑動 PID 控 制器來解決外部干擾,並且透過一個幅狀基底函數類神經網路(RBFNN)與自適應 調節來解決訊號抖震的問題,但因執行時間太冗長,且機器人須及時動作,因此 並非為最佳的方法。Das 及 Kar [14] 設計一個適應性模糊控制器,其參數可以 及時調整,而機器人的速度和角速度是利用類神經網路來控制[15]。然而,執行 類神經網路需要很高的運算量。. 此外,模糊控制也常被應用在機器人的控制上面,其中模糊集合起源於 Zadeh L. A. 教授在 1965 年發表了的一篇關於模糊集合的論文。在 1975 年,Mamdani 與 Assilian 建立了模糊控制器的基本架構。模糊代表一個程度的概念,有別於傳 -2-.

(13) 統明確集(Crisp Set) 元素對於集合的歸屬性都只能是 0 和 1,模糊集(Fuzzy Set) 則擁有一個歸屬函數,用來表示元素與集合的關係。模糊邏輯控制系統四個主要 的運算步驟為(1) 模糊化(Fuzzifier)、(2) 模糊規則庫(Fuzzy Rule Base)、(3) 模糊 推論引擎(Inference Engine)、(4) 解模糊化(Defuzzifier)。TS 模糊模型是 Takagi 和 Sugeno 兩 位 學 者 於 1985 年 提 出 , TS 模 糊 模 型 也 可 以 被 稱 為 Takagi-Sugeno-Kang(TSK)模糊模型,因為剛開始是由 Takagi 和 Sugeno 兩位學 者提出,後來由 Sugeno 和 Kang 在模糊模型判別方面的研究將其發揚光大。TSK 模糊模型的主要理論是將一般模糊模型的前件部保持不變,後件部的每一條模糊 規則都為線性的動態方程式。在[16]中,作者提出理論證明了 Takagi-Sugeno-Kang (TSK)模糊模型的穩定性。TSK 模糊系統是可以透過一組 IF-THEN 規則描述的 非線性系統,它已被證明可以逼近任意連續函數[17]。文獻[17, 18-20]提出了透過 TSK 模糊模型來設計自適應控制器,當外部干擾發生時,仍然可以即時調整參數, 獲得良好的控制效能。. 1.3. 研究動機與目的. 1. 為了使用機器人來達成巡邏的任務,首先需要了解巡邏環境的地圖,並決定機 器人巡邏的路線。因此,在本論文中,透過 D* Lite 演算法來找出在室內環境地 圖中機器人的最短的巡邏路徑。為了讓機器人能正確的沿著最短的巡邏路徑行走, 軌跡追蹤控制就成為一個重要的議題,特別是在長距離的軌跡追蹤控制中,如何 使機器人能夠精準地抵達目的地是一項更困難問題。在長距離的移動中,工作機 器人本身定位造成的微小的誤差經過累積都可能放大到無法忽視的地步,進一步 會造成實際行走軌跡的誤差。因此設計出一個良好的控制器可以減少機器人在行 走間產生的誤差是一個重要的議題。. 2. 另一方面,在已知最佳路徑的情況下,如何使機器人以最短距離從樓層中的一 點移動到另一個點也是相當重要的。為了使機器人能成功追蹤到參考軌跡,需要 使用運動學控制器來計算機器人控制力的值在多少的情況下,可以成功的使輸出 訊號與參考訊號之間的誤差趨近於零。運動學控制器並未考慮到機器人本身的結 -3-.

(14) 構,在機器人實際移動的狀況下,可能由於機器人本身的動態或實驗環境因素造 成輸出速度與參考速度之間的誤差,因此除了考慮運動學模型外,也考慮機器人 的動態模型,考慮動態模型可以有效降低此誤差。因此本文中將考慮機器人的動 態模型,設計自適應 TSK 模糊控制器,使機器人能更順利地追蹤到規劃路徑。. 3. 本文使用 TSK 模糊控制器作為動態控制器,優點為透過 TSK 模糊系統來近似 機器人的動態模型,不需要測量機器人內部一些難以測量的參數,即可以使用 TSK 模糊控制器來得到良好的控制效能。. 1.4. 論文架構 本文組織架構如下:. 第二章為輪型機器人系統架構 本章節介紹輪型機器人使用的軟硬體設備,包括輪型機器人硬體架構與規格、 系統、通訊方式、電力驅動系統與聲納感測系統。. 第三章介紹運動學控制器 運動學控制器之公式由運動學模型透過倒階法設計,並證明公式的穩定性。. 第四章討論動態模型控制器之設計 首先介紹輪型機器人之動態模型,接著敘述基本的 TSK 模糊系統,最後透 過 TSK 模糊系統來設計動態模型控制器。. 第五章路徑規劃 本章介紹輪型機器人路徑規劃的實驗環境。接著說明 D* Lite 演算法,規劃 輪型機器人行走時的最短路徑。. 第六章提供實驗結果 -4-.

(15) 實驗輪型機器人在實際環境下,追隨透過 D* Lite 規劃出的最短路徑,並討 論實驗結果,並做分析。. 第七章提出結論 透過此篇論文探討出提供的控制器是有效的,並以實驗結果來分析模擬與實 際執行之間造成誤差的可能因素。. -5-.

(16) 第二章 輪型機器人系統架構 2.1 輪型機器人硬體架構及規格 本實驗使用的機器人為 Pioneer 3-DX,如圖 2-1[21]所示,機器人離地高度為 21.5 公分,寬度為 38 公分,迴轉半徑為 26 公分,其鋁製的車身可減輕機器人的 重量,最多可以同時配備 3 顆鉛蓄電池,在只裝一顆電池的情況下,車體重量為 9 公斤,除此之外,機器人最多還可以攜帶 23 公斤的額外重量,機器人在兩側裝 有驅動輪並在車體的後方加裝一輔助輪,以增加機器人移動的穩定度,藉由車體 前方的 8 顆聲納,我們可以感測與物體之間的距離。圖 2-2 為機器人實際的外觀。. 圖 2-1 機器人尺寸示意圖[21]. -6-.

(17) 圖 2-2 機器人外觀. 2.2 系統說明 圖 2-3 為機器人的系統架構,本研究使用的機器人(Pioneer 3-DX)內部含有編 碼器,經由定義機器人開始放置的座標為原點,編碼器可以由馬達的轉速來計算 出機器人目前座標與機器人目前角度,將輪型機器人目前的位置與原點的座標相 減,可得到相對於起始位置的橫坐標、縱座標及角度。聲納系統可以透過發射與 接收超音波來偵測機器人週邊的環境,及在行走過程中是否有遇到障礙物等。最 後,將得到的座標資訊、角度資訊及超音波資訊傳送至微電腦控制板進行處理, 再透過本文所提出的控制器控制機器人左右輪轉速以抵達目的地。. 圖 2-3 機器人系統架構. -7-.

(18) 2.3 通訊方式 Pioneer 3-DX 的通訊方式可分為四種,如圖 2-4[21]所示: (1) 利用 PC 直接透過 RS232 串列埠與機器人連結,將指令直接傳給機器人。 (2)利用 PC 透過 RS232 串列埠接上無線數據機,透過無線傳輸控制機器人移動。 (3)將筆記型電腦直接置於機器人上,再透過 RS232 串列埠與機器人連結。本研 究主要採用這種連結方式。 (4)將指令直接寫入機器人之中的單板電腦,再利用單板電腦中的 RS232 串列埠 與機器人連接。. (1). (2). (3). (4). 圖 2-4 機器人通訊方式[21]. 2.4 電力與驅動系統 Pioneer 3-DX 透過鉛酸蓄電池提供動力,電力在經過保護電路、整流電路與 穩壓電路後,提供給機器人內部的微電腦控制板、聲納電路與驅動電路,如圖 2-5 所示。. 圖 2-5 機器人電力系統架構. -8-.

(19) 機器人上 LED 的顏色和電池的電壓數有關,在電完全充滿的狀況下,會顯 示綠燈(>12.5 伏),而在電量不足的情況下會顯示紅燈(小於 11.5 伏)。機器人最多 可配備 3 顆鉛酸電池(12 伏/ 7 安培),在配備一顆電池情況下就可以驅動機器人, 機器人的執行時間,在配備三顆電池情況下約可以執行 9-10 小時。. 2.5 聲納感測系統 機器人總共裝有 8 顆聲納,從機器人的前方看,最右邊的編號是零號,依序 下去最左邊則是 7 號。機器人的左側及右側各安裝有一顆聲納,左右兩側第 1 顆 與第 2 顆聲納之間的角度差為 40 度,而中間 6 顆相距的距離 20 度,如圖 2-6[21]。 藉由此 8 顆聲納,機器人可以抓前方約 180 度的資訊。此外,聲納的有效範圍最 小為 10 公分最大到 5 公尺。. 圖 2-6 超音波系統 [21]. -9-.

(20) 第三章 輪型機器人運動學控制器之設計. 本章節的目的為設計一個適用於輪型機器人的控制器。首先先設計運動學控 制器,考慮到輪型機器人的運動學模型,計算出需要給輪型機器人怎樣的控制力, 可以使機器人的實際軌跡追上參考軌跡。. 3.1 輪型機器人之運動學模型 輪型機器人最典型的模型[22]如圖(3-1)所示。車體左右兩邊有兩個驅動輪, 而在車體的尾部有一個輔助輪。我們定義實際位置 q 和參考位置 q r 如下: q   x, y,   3 , qr   xr , yr , r  3 T. T. (3-1). 其中 x、y 是橫軸與縱軸的實際位置,  是機器人的方向。 xr 、 yr 和  r 是參考訊 號。. 圖 3-1 輪型行動機器人. 機器人的運動學模型定義如下:  x  cos      y    sin     0  . 0 0 V 1 . 其中 V  [v,  ]T ,v 代表機器人的移動速度,  代表機器人的角速度。. -10-. (3-2).

(21) 3.2 運動學控制器 在此節中,我們定義位置追蹤向量 q e 如式子(3-3)。圖 3-2 為機器人的位置誤 差圖。  qe1   cos  q e   qe 2     sin   qe3   0. sin  cos  0. 0   xr  x  0   yr  y  1   r   . (3-3). 圖 3-2 位置誤差圖 將 qe1  cos  ( xr  x)  sin  ( yr  y) 微分,則可得到(3-4) qe1  ( xr  x) cos   ( yr  y)sin   ( xr  x) sin   ( yr  y) cos . (3-4). 將(3-3)式 qe 2   sin  ( xr  x)  cos  ( yr  y) 與    和 v  x cos  y sin  代入(3-4),則 可得到(3-5) qe1  v   qe 2  xr cos( r  qe3 )  yr sin( r  qe3 )  v   qe 2  xr (cos  r cos qe3  sin  r sin qe3 )  yr (sin  r cos qe3  cos  r sin qe3 )  v   qe 2  ( xr cos  r  yr sin  r ) cos qe3  ( xr sin  r  yr cos  r )sin qe 3  v   qe 2  vr cos qe3. 將 qe 2   sin  ( xr  x)  cos  ( yr  y) 微分,則可得到(3-6). -11-. (3-5).

(22) qe 2  ( xr  x) sin   ( yr  y ) cos   ( xr  x) cos   ( yr  y ) sin    qe1  xr sin   yr cos    qe1  xr sin( r  qe 3 )  yr cos( r  qe 3 )   qe1  xr (sin  r cos qe3  cos  r sin qe3 )  yr (cos  r cos qe 3  sin  r sin qe 3 ). (3-6).   qe1  ( xr cos  r  yr sin  r ) sin qe3  ( yr cos  r  xr sin  r ) cos qe3   qe1  vr sin qe 3. 最後將 qe 3 微分,如(3-7) qe3   r    r  . (3-7). 根據上列的計算,誤差方程式可以寫成下列式子。  qe 2  vr cos qe 3   qe1   1  q   v  0     q    v sin q  e3   e1   r  e2     1   r   qe 3   0 . (3-8). 其中 vr 和 r 是參考速度和角速度,且 Vr  [vr , r ]T 。 在文獻[11], [23],作者透過倒階控制法去設計速度控制器,如下: vr cos qe3  1qe1  vc          v q   v sin q  2 r e2 3 r e3   c  r. (3-9). 其中 Vc  [vc , c ]T 是速度控制器。 1 、  2 和  3 是正數。 定理 3.1:如果運動學控制器設計如式子(3-9),則當時間趨近無窮大時,實際位 置 q 將會趨近參考位置 q r 。 證明: 1  cos qe3 1 V (qe1 , qe 2 , qe3 )  (qe12  qe 2 2 )  2 2. (3-10). 由(3-10)式可知 V  0 ,將(3-10)式做微分,可得到(3-11) V  qe1qe1  qe 2 qe 2 . sin qe3. 2. (3-11). qe3. 將(3-9)式代入(3-11)式,可得到(3-12) V  qe1 (vc  c qe 2  vr cos qe3 )  qe 2 (c qe1  vr sin qe3 ) . sin qe3. 2. (r  c ). (3-12). 將(3-12)式乘開整理,可得到(3-13) V  vc qe1  vr qe1 cos qe3  vr qe 2 sin qe3  -12-. sin qe3. 2. (r  c ). (3-13).

(23) 再將(3-9)式帶入(3-13),可得到(3-14) V  1q e21  vr qe 2 sin qe 3   1q e1  2.  3vr. 2. sin qe 3. 2. ( 2 vr qe 2   3vr sin qe 3 ). 2. sin qe 3. 由於 1 、  2 、  3 及 vr 為設計參數,可取為正值,則 V  0 。. -13-. (3-14).

(24) 第四章 輪型機器人自適應模糊 TSK 控制器設計. 每台不同型號的輪型機器人的長度、寬度、重量、質心位置以及車輪的半徑 不一定一致,使用運動學控制器給不同型號的輪型機器人同樣的控制力,也不一 定能保證輪型機器人能追上參考速度。因此須將輪型機器人的動態模型列入考慮, 由於動態模型為線性連續,可透過泰勒展開式來展開,可得到一個虛擬的線性化 系統。此章節透過 TSK 模糊控制器來近似虛擬的線性化系統,新得到的控制力 考慮到輪型機器人的動態模型,使機器人的實際速度與參考速度能達到一致。. 4.1 輪型機器人之動態模型 在這個章節所介紹的輪型機器人之動態模型是由 De La Cruz 以及 Carelli (2006)[11]所提出,完整的數學模型如下: k3 2 k 4 1   v  f1 (v,  , vd , d )  k   k v  k vd  1 1 1    f (v,  , v ,  )   k5 v  k6   1  2 d d d  k2 k2 k2. (4-1). 其中 vd 和 d 為控制力,v 和  為機器人的真實的速度和角速度, k1、k 2 、k3 、k 4 、 k5 和 k6 [24, 25]為常數,如下所示: Ra (mRt r  2 I e )  2rk DT ] ka k1  2rk PT [. Ra ( I e d 2  2 Rt r ( I z  mb 2 ))  2rdk DR ] k k2  a 2rdk PR. (4-2). [. k3 . Ra mbRt ka 2k PT. Ra ka kb (  Be ) ka Ra k4  1 rk PT k5 . k6 . Ra mbRt ka dk PR. Ra ka kb d (  Be ) 1 ka Ra 2rkPR -14-. (4-3) (4-4). (4-5) (4-6) (4-7).

(25) 其中 m 是機器人的質量, I z 是機器人質心的轉動慣量, Ra 是馬達的電阻, kb 是馬 達的電動勢參數, k a 是馬達的轉矩, Be 是摩擦係數, I e 是轉動慣量, r 是車輪的 半徑, Rt 是輪箍的半徑,增益常數 kPT  0 、 kPR  0 、 kDT  0 與 kDR  0 。. 圖 4-1 標示出機器人在動態模型中所用到的參數。G 是機器人的質心,B 是 自走車兩輪之間的中心點,b 是質心到中心點之間的距離,d 是兩輪之間的距離。. 圖 4-1 機器人在動態模型所用到的部分參數. 4.2 TSK 模糊模型 TS 模糊模型是 Takagi 和 Sugeno 兩位學者於 1985 年提出,TS 模糊模型也 可以被稱為 Takagi-Sugeno-Kang(TSK)模糊模型,因為剛開始是由 Takagi 和 Sugeno 兩位學者提出,後來由 Sugeno 和 Kang 在模糊模型判別方面的研究將其 發揚光大。由下列規則建構: 若 x1 為 C1l 與. 與 xn 為 Cnl ,則 y l  c0l  c1l x1 .  cnl xn. 其中 Cil 為模糊集合, cil 為常數並且 l  1, 2, , M 。將一般模糊模型的前件部保持不 變,透過更改後件部的每一條模糊規則一個線性的動態方程式,則可將非線性的 系統的動態行為透過混合多個子線性系統的局部動態行為來近似非線性系統。在 使用 TSK 模糊系統近似原來的非線性系統後,則可用平行分散補償[26] (parallel distributed compensation, PDC)的概念(如圖 4-2)去設計估測器與控制器,每一條控 制法則使用對應 TSK 模糊的規則做分配式設計,模糊模型的每一條規則都可被. -15-.

(26) 一個動態線性系統描述。最後,設計出來的模糊控制器可由個別的線性控制器透 過模糊混合來完成。. 圖 4-2 平行分散補償概念. 模糊規則設計如下: 考慮第 i 條規則 IF z1 is Fi1 and z2 is Fi 2 and. and zn is Fin. Then u(t )   Ki x(t ). 控制器輸出則為 r. u(t ) . n.   Fij ( z )[ K i x(t )]. i 1 j 1. r. n. r.   H i ( z )[ K i x(t )] i 1.   Fij ( z ). (4-8). i 1 j 1. Hi ( z) . Fij ( z ) n.  Fij ( z ). (4-9). j 1. 比較模糊模型的模糊推論句與模糊控制器的模糊推論句,前件部中歸屬函數 使用的數量一樣多,稱為平行。分散的概念則是一個線性控制器不是只對應一個 線性系統,而是交錯控制所有的線性系統。補償則是控制的概念。. TSK 模糊系統可分為連續時間模糊系統(continuous-time fuzzy system, CFS) 與離散時間模糊系統(discrete-time fuzzy system, DFS)。以下介紹這兩個系統。. -16-.

(27) 1. 連續時間模糊系統 考慮第 i 條規則: IF z1 is Fi1 and z2 is Fi 2 and. zn is Fin. x(t )  Ai x(t )  Bi u(t ) Then  i  1, 2 y (t )  Ci x(t ) . ,r. 其中 z1 , z2 , , zn 為前件部變數,可以是外部干擾、狀態空間的函數或時間, Fin 是 歸屬函數, x(t ) 為系統狀態, u(t ) 為控制輸入, y(t ) 為系統輸出。r 和 n 代表狀態 變數和規則數。整個模糊模型表示成 r. x(t ) . n.   Fij ( z )[ Ai x(t )  Bi u(t )]. i 1 j 1. r. n. r.   H i ( z )[ Ai x(t )  Bi u(t )] i 1.   Fij ( z ). (4-9). i 1 j 1. Hi ( z) . Fij ( z ) n.  Fij ( z ). (4-10). j 1. 2. 離散時間模糊系統 r. x(t  1) . n.   Fij ( z )[ Ai x(t )  Bi u(t )]. i 1 j 1. r. n. r.   H i ( z )[ Ai x(t )  Bi u(t )] i 1.   Fij ( z ). (4-11). i 1 j 1. Hi ( z) . Fij ( z ) n.  Fij ( z ). (4-12). j 1. 4.3 TSK 模糊控制器設計 透過使用動態控制器,機器人的實際速度可以追上參考速度。輪型機器人的 動態模型[24]如下: k3 2 k 4 1   v  f1 (v,  , vd , d )  k   k v  k vd  1 1 1    f (v,  , v ,  )   k5 v  k6   1  2 d d d  k2 k2 k2. (4-13). 其中 Vd  [vd , d ]T 為控制力,及 K  [k1, k2, , k6] 如(4-2)-(4-7)所示。首先,我們於操. -17-.

(28) 作點向量 [Vo , Vd o ] 將(4-13)式進行泰勒級數展開,則可得虛擬的線性化系統(virtual linearized system,VLS),表示如(4-14)。 V  A V  B Vd  d. (4-14).  d   d  f (V , V )  d   1    h1 1 o do   d 2   d h 2  f 2 (Vo , Vdo ) . (4-15). ,其中 d hj ( j  1, 2) 表示高次項, V  [v 1 , v 2 ]T  V  Vo , Vd  [vd 1 , vd 2 ]T  Vd  Vdo ,  a (V , V ) a12 (Vo , Vdo )  A   11 o do   a21 (Vo , Vdo ) a22 ( Vo , Vdo ) . (4-16).  b (V , V ) b12 (Vo , Vdo )  B   11 o do  b21 (Vo , Vdo ) b22 (Vo , Vdo ) . (4-17). 和. TSK 模糊規則庫[17, 27] 設計如下: R (i ) : If z1 is F1i and z2 is F2i and z3 is F3i and z4 is F4i Then yl  pli1 z1  pli2 z2  pli3 z3  pli4 z4. 其中 z  [z1 , z 2 , z3 , z 4 ]T 4 是一個狀態向量, yl 為系統輸出, F ji 是模糊集合, plki 是 可調參數。模糊系統的輸出 plk 為 plk . h. 4. i 1. j 1.  plki (  F i ( z j )) h. 4. i 1. j 1.  ( . j. F ji. (4-18). ( z j )). 其中  F ( z j ) 是隸屬函數的值。為了調整權重因子 pki , wi 定義為: i j. 4. w . . j 1 4 h. i. F ji.  (  i 1. j 1. (z j ). . F ji. (4-19). ( z j )). 基於上述假設,為了近似 VLS,第 i 個模糊集可以被描述為 Ri : If v 1 is F1i and v 2 is F2i and vd 1 is F3i and vd 2 is F4i ˆ iV  B ˆ iV Then V  A . . ˆi p A  p. i 11 i 21. d.  p13i p  i ˆ  和 B  i p   p23 i 12 i 22. 應用一些常用模糊化策略後,我們可以得到. -18-. p14i  . i  p24 .

(29) h. ˆi V B ˆi V } V   wi {A  d i 1. p   11  p21.  p13 p12   V   p22   p23 和 bij .. p14   Vd p24 . (4-20). 其中 pij 用來近似式 (4-19)的 aij 為了彌補高階項、未建模動態(在(4-15)中 f1 (Vo , Vdo ) 與 f 2 (Vo , Vdo ) )和建模誤差 d f  [d f 1 , d f 2 ]T 的影響,我們重新定義包含總誤差的模糊近似向量如(4-21)所示 h. ˆi V B ˆ i V } d V   wi {A  d. (4-21). i 1. 其中  d   dh1  f1 (Vo , Vdo )+d f 1  (4-22) d   1   . d  f ( V , V )+ d d h 2 2 o do f 2   2  T 此 外 , 藉 由 定 義 ev  V  Vc , Vc  [vc , c ] 和 霍 爾 維 茨 (Hurwitz) 矩 陣 為. Λ  [1 ,0; 0, 2 ] ,則動態控制法可設計為: h. Vd . ˆ i V  V  Λe  V  wi A  c v ds i 1. h.  w Bˆ i.  Vdo. (4-23). i. i 1. 使用 ev  V  Vc 與(4-14)式,VLS 的誤差動態方程式可以寫成 h. h. i 1. i 1. ev  ev   wi Ai V   wi Bi Vd  Vds  d. (4-24). ˆ *i  B ˆi , 我 們 定 義 A ˆ * i A ˆ i, Bi  B ˆ *i 及 Bˆ *i 為 最 佳 可 調 矩 陣 , 其 中 Ai  A Vds  Diag[ sign(e )]K v,其中 e  evT   [e1 e 2 ],  0 是一個李普洛夫(Lyapunov) 矩陣, K v  [kv1 , kv 2 ]T 是控制增益向量。. 定理 4.1: 如果動態控制器設計如式(4-23),適應性更新法則設計如下, ˆ i   wi e VT A 1 v . (4-26). ˆ i   wi e VT B 2 v d. (4-27). 2. 此外,控制增益 K v 選擇為  kvj ej  kv ,其中  i 和 k v 為正數,則機器人實際的 j 1. 速度和角速度可以達到預期的速度和角速度。 證明: 考慮類似李普洛夫的函數 1 1 h 1 h iT i v  evT ev  tr ( A  A )  tr (BiT Bi )   2 21 i 1 22 i 1. 將(4-28)式對時間微分,可得到. -19-. (4-28).

(30) v. 1 T 1 1 h 1 h iT i e v e v  e v T e v  tr ( A  A )    tr (AiT Ai ) 2 2 21 i 1 21 i 1 1  2 2. h. 1 tr (B B )   2 2 i 1 iT. i. h.  tr (B. iT. (4-29). B ) i. i 1. 將式(4-26)與(4-27)帶入(4-29),則可得(4-30) v. h h 1 T T 1 h ev (    )ev  evT   wi A i V e vT   wi Bi Vd   tr ( A iT A i ) 2 1 i 1 i 1 i 1. . h. 1. 2.  tr (B. iT. i 1. (4-30). B )  ev d  e v Vds i. T. T. 引理4.1 [28]: 給定一個矩陣   R nn 。對每一個對稱的正定矩陣 Q  Rnn ,僅在   R nn 為霍爾維茨矩陣時,李普洛夫矩陣方程式 T     Q 會存在唯一解   T  0 。. 由引理4.1,式(4-30)可寫成(4-31) h h 1 v   evT Qev  evT  wi Ai V evT  wi Bi Vd 2 i 1 i 1 h h 1 1   tr ( AiT Ai )   tr (BiT Bi )  evT d  evT Vds. 1. 2. i 1. i 1. (4-31).    ev d  ev Diag[ sign(e  )]K v T. T. n.    k   k j ej j 1. 其中 h h 1 1 h    evT Qev  evT  wi Ai V evT  wi Bi Vd   tr ( AiT Ai ) 2 1 i 1 i 1 i 1. . 1. 2. h.  tr (B. iT. B i ). i 1. h h h ˆi 1 AiT A   evT Qev  tr ( wi AiT ev V T     wi BiT ev Vd T 2 1 i 1 i 1 i 1 h. ˆi BiT B. i 1. 2. . (4-32). ). ˆ i 和 Bˆ i 定為式(4-26)和式(4-27),(4-32)可寫成 如果將 A 2 1 v   evT Qev  k   k j ej 2 j 1. (4-33). 2. 選擇 k j , j  1, 2 的值,使得  k j ej  k j 1. 則v  0 (4-34) 式(4-28)與式(4-34)只能保證 ev (t )  L ,但是不一定收斂。 e v 的有界性意味著 V 的 -20-.

(31) 有界性,由於操作狀態是有限的,V 是有界的。根據 V 的有界性, Vd 是有界的。 因此 ev (t ) 是有界的,即 ev (t )  L 。將(4-34)式兩邊積分,可得 t 1 2 v(t )  v(0)  min (Q)  ev ( ) d 0 2. (4-35). 其中, min (Q)  0 為矩陣 Q 最小的特徵值。則當 t 趨近無限大時,(4-35)式可改寫 為,. . . 0. ev ( ) d  2. v()  v(0) 1 min (Q) 2. (4-36). 引理4.2 [29]: 如果 ev (t )  Ln 及 ev (t )  Ln ,且 ev (t )  Lnp ,則 lim ev (t )  0 。 t . 由於(4-36)式右邊是有界的, ev (t )  L2 ,則根據引理4.2,在 t  時 ev (t )  0 ,故 得證。 演算法 4.1: 1) 選擇(4-23)式的係數 i ( i  1, 2 ),使得 Λ 是一個霍爾維茨矩陣。 2. 2) 挑選適當的參數 kvj ( j  1, 2 ),使得  kvj ej  kv。為了彌補訊號抖震現象,(4-25) j 1. 式可以修改為式(4-37)    kvj  Vdsj   kvj k e  vj j   j. if ej  0 and ej   j if ej  0 and ej   j , j  1, 2. (4-37). if ej   j. 其中  j , ( j  1, 2) 為正數。 3) 選擇一個適當的矩陣 Q (4-34),然後解出引理4.1的李普洛夫矩陣。 4) 決定 V 和 Vd 的模糊集合。 5) 得到動態控制器(4-23)和更新法則(4-26)(4-27)。 圖4-3說明了論文中提到的TSK模糊控制器結構,透過TSK模糊控制器計算出控制 力 Vd ,更新法則在外部干擾發生變化時能及時修正,控制力 Vd 經過機器人的動態 模型可以得到機器人的實際速度 V 。 -21-.

(32) 圖4-3 TSK模糊控制器結構. -22-.

(33) 第五章 路徑規劃. 為了實現機器人巡邏的任務,首先需要整層樓的地圖,接著需要知道輪型機 器人在地圖上的哪一個點以及哪些位置希望被巡邏到,計算出一條適合的路徑讓 機器人追蹤,以達成巡邏的目的。本文先給定機器人目前的點與希望輪型機器人 巡邏到的位置,再透過路徑規劃,計算出一條最短路徑,使機器人能成功抵達目 的地。. 5.1 實驗環境 輪型機器人工作的區域為台灣師範大學科技大樓五樓整層,其中僅走廊部分 被設為可通行區域,其餘視為障礙物。我們利用格點法來表示此工作區域,由於 機器人寬度為 40 公分,移動的方式為自一個格點中央移到至另一個格點中央, 因此為了讓機器人能順利通過,每個格點大小設計為 40 公分。圖 5-1 為實驗樓層 規劃出來的地圖。左上角被定為格點(0, 0),右下角則為(118, 98)。圖 5-2 為對 應於圖 5-1 的實際實驗環境圖。. -23-.

(34) (0, 0) (0, 0) m. (118, 98). 圖 5-1 師大 5 樓平面圖. (47.2, 39.2) m. (a). (b). (c). (d). (e). (f). (g). (h). (i). 圖 5-2 實驗環境 -24-.

(35) 5.2 D* Lite 演算法 許多演算法可以用在機器人路徑規劃上,例如 A*、D*和 D* Lite,其中 D* Lite 是 D*的簡化版本。其主要方法如下:首先,設定機器人目前的位置為出發節點(第 一個節點),再選擇離目的地有最小代價的節點為機器人的下一個位置,重複上面 的步驟直到機器人抵達目的地,該路徑即為最短路徑。我們定義 g 是一個代表到 終點的代價的函數,其定義如下[6]: rhs(u)  min (c(u, s)  g ( s)) sSucc ( u ). (5-1). 其中 u 為目前的節點, Succ(u) 為所有與 u 相鄰的節點,且 s  Succ(u ) , c(u, s) 表 示從 u 到 s  的代價。決定各節點的優先順序的方法如下: 1. 當 g=rhs,則這個節點為 consistent。 2. 當 g>rhs,則這個節點為 over-consistent。 3. 當 g<rhs,則這個節點為 under-consistent。. 使用 D* Lite 演算法來規劃路徑有 4 個步驟。 步驟 1:一開始將所有節點的 rhs 和 g 值設成無限大,同時清空開放列表。然後, 將終點的 g 值設為無限大,rhs 值設為零。再將終點加入開放列表,並且定義為 路徑起始點,同時設此點為目前路徑規劃的執行點 pointcurrent 。 步驟 2:如果 pointcurrent 是 over-consistent,則令 pointcurrent 的 g 值等於它的 rhs 值, 然後把所有與 pointcurrent 相鄰的點加入開放列表,更新它們的 rhs 值,令新的 rhs 值為 pointcurrent 的 g 值加上到相鄰點所需的代價,然後把 pointcurrent 移出開放列表。 但如果 pointcurrent 是 under-consistent,則把它的 g 值設為無限大,然後把與 pointcurrent 的點相鄰的點加入開放列表,更新它們的 rhs 值,再把目前的點移出開放列表, 選擇開放列表中優先權較高的點當作機器人的下一個位置。 步驟 3:如果機器人行走時偵測到障礙物,則障礙物那點的 rhs 值設成無限大, 與障礙物相鄰的點的代價更新為無限大。由於機器人不能通過障礙物,之前規劃 的路徑無法使用,於是重新規劃一條路徑從機器人 pointcurrent 到目的地。 -25-.

(36) 步驟 4:重複執行步驟 2 和步驟 3 直到機器人抵達目的地,或者也有可能沒有任 何路徑存在。若找到路徑,即為可能的最短路徑。. 以下介紹路徑規劃中從一格點到周邊各點所需之代價。首先於圖 5-3 中介紹 何謂周邊各點,假設選定中間格點(白色)為 pointcurrent ,則其周邊 8 格點為周邊各 點,同時加入開放列表,圖 5-3 中 8 格(黃色)即為周邊各點。. 圖 5-3 演算法選定中間點時周邊需加入開放列表中 8 格的示意圖. 接著介紹移動所需之代價。設定從可行走區域的一格點到對角線的另一格點 行走的代價為 1.4,若從可行走區域的一格點到隔壁另一格點的代價為 1,如圖 5-4 所示。. 圖 5-4 從可行走區域到周邊任一格之代價. 從可行走區域的一格點到對角線為障礙物的另一格點行走代價為無限大。從 可行走區域的一格點到隔壁為障礙物的另一格點的代價為無限大。從為障礙物的 一格點到對角線為可行走區域的另一格點的代價為無限大。從障礙物的一格點到 隔壁可行走區域的另一格點的代價為無限大。如圖 5-5。. -26-.

(37) 圖 5-5 從可行走區域到障礙物之代價 從為障礙物的一格點到對角線的另一個為障礙物格點的行走代價為無限大。 從為障礙物的一格點到隔壁為障礙物的另一格點的代價為無限大。如圖 5-6。. 圖 5-6 從障礙物到障礙物之代價 以下給出一個使用 D* Lite 演算法的實例。棕色的地方為障礙物,黃色的為 加入開放列表的點。在演算法一開始將各點的 g 值和 rhs 值定為無限大,終點的 rhs 值定為零,之後把終點加入開放列表。如圖 5-7[30]。. 圖 5-7 初始化. -27-.

(38) 加入開放列表後,因為終點的 g 值>rhs 值,根據演算法則,讓 g=rhs,則 g 值變為零,之後將終點移出開放列表。如圖 5-8[30]。. 圖 5-8 將終點加入開放列表. 然後將周邊的 8 個格子加入開放列表,障礙物無法加入,因此被加入的點只 有(0, 1)和(1, 0),新加入的點的 rhs 值變為前一點的 g 值加上從前一點到新加入的 點的代價,所以 2 個新加入的點的 rhs 值變為 1。如圖 5-9[30]。. 圖 5-9 計算點(0, 1)和(1, 0)之 rhs 值 -28-.

(39) 接著由於點(0, 1)的 g 值>rhs 值,根據演算法則,讓 g=rhs,則 g 值變為 1, 之後將(0, 1)移出開放列表。如圖 5-10[30]。. 圖 5-10 計算點(0, 1). 然後將周邊的 8 個格子加入開放列表,障礙物無法加入,點(1, 0)已經在開放 列表中,而之前被移出開放列表的終點 並不會再加回列表。新加入開放列表的 點只有(0, 2)和(1, 2),透過演算法計算 2 點的 rhs 值分別為 2 和 2.4。如圖 5-11[30]。. 圖 5-11 計算點(0, 2)和(1, 2)之 rhs 值 -29-.

(40) 選擇開放列表中 rhs 值最小的點當作下一個點,重複計算直到起點被計算到。 如圖 5-12[30]以及圖 5-13[30]。. 圖 5-12 將大部分格子之 g 值與 rhs 值計算完. 圖 5-13 起點被計算到 接著從起點出發,找尋周邊 8 格中 rhs 值最小的點當作機器人下一個移動的 位置,重複這個動作直到機器人抵達終點,中間經過的路徑即為最短路徑。如圖 5-14[30]。 -30-.

(41) 圖 5-14 最後之規劃結果. 在機器人的行走過程中發現點(2, 2)是障礙物,機器人不能通過。如圖 5-15[30]。. 圖 5-15 機器人發現障礙物. 將點(2, 2)的 rhs 值變為無限大,加入開放列表中,並重新計算周邊在規劃路 徑中經過點(2, 2)方格的 rhs 值,點(3, 3)的 rhs 值原本是點(2, 2)方格的 g 值(3.4)加 上從點(2, 2)到點(3, 3)的代價(1.4),更改後變為點(2, 3)方格的 g 值(3.8)加上從點(2, -31-.

(42) 3)到點(3, 3)的代價(1),改完後依然不變,所以不加入開放列表,點(1, 3)、點(1, 2) 與點(2, 3)如同點(3, 3),如圖 5-16[30]。. 圖 5-16 更新點(3, 3). 點(3, 2)的 rhs 值從原本的 4.4 變為點(2, 3)方格的 g 值(3.8)加上從點(2, 3)到點 (3, 2)的代價(1.4),因此 rhs 值變為 5.2,由於計算後 g 值和 rhs 值不相等,將此點 加入開放列表中,如圖 5-17[30]。. 圖 5-17 更新點(3, 2) -32-.

(43) 點(3, 1)的 rhs 值從原本的 4.4 變為點(3, 2)方格的 g 值(4.4)加上從點(3, 2)到點 (3, 1)的代價(1),因此 rhs 值變為 5.4,由於計算後 g 值和 rhs 值不相等,將此點 加入開放列表中,如圖 5-18[30]。. 圖 5-18 更新點(1, 3). 更改從周邊各點到點(2, 2)的代價,將其變為無限大,如圖 5-19[30]。. 圖 5-19 更改周邊各點代價. 接著由於點(2, 2)的 g 值<rhs 值,根據演算法令 g 等於無限大,點(2, 2)變為 -33-.

(44) 障礙物,如圖 5-20[30]。. 圖 5-20 計算點(2, 2). 令 k  min(rhs(s), g (s)) ,取開放列表中 k 值最小的點當作下一個計算的點,下 一個為點(3, 2)。接著由於點(3, 2)的 g 值<rhs 值,根據演算法令 g 等於無限大, 將其移出開放列表,然後將其周邊的值更新,如圖 5-21[30]。. 圖 5-21 計算點(3, 2). 點(4, 2) 的 rhs 值變為 4.8+1.4=6.2,點(3, 1) 的 rhs 值變為 5.4+1.4=6.8,由於 -34-.

(45) 點(4, 2) g 值和 rhs 值不一致,因此將其加入開放列表中,如圖 5-22[30]。. 圖 5-22 更新點(4, 2). 點(3, 2) g 值和 rhs 值不一致,因此將其加入開放列表中,如圖 5-23[30]。. 圖 5-23 將點(3, 2) 加入開放列表. 取開放列表中 k 值最小的點當作下一個計算的點,下一個為點(3, 1)。接著由 於點(3, 1)的 g 值<rhs 值,根據演算法令 g 等於無限大,如圖 5-24[30]。. -35-.

(46) 圖 5-24 計算點(3, 1). 更新點(3, 0)與(4, 0)的 rhs 值,變為前一點的 g 值加上過程的代價,兩點更改 完後皆為無限大,由於 g 值和 rhs 值相同,將其移出開放列表,如圖 5-25[30]。. 圖 5-25 更新點(3, 0)與(4, 0). 點(3, 1) g 值和 rhs 值不一致,因此將其加入開放列表中,如圖 5-26[30]。. -36-.

(47) 圖 5-26 將點(3, 1)加入開放列表. 令點(3, 2)的 g 值等於 rhs 值,將其移出開放列表,如圖 5-27[30]。. 圖 5-27 計算點(3, 2). 令點(3, 1)的 rhs 值等於 5.2+1=6.2,如圖 5-28[30]。. -37-.

(48) 圖 5-28 更新點(3, 1). 改變後的路徑即為新的最短路徑,如圖 5-29[30]。. 圖 5-29 路徑規劃結果. 5.3 改良型 D* Lite 演算法 機器人在走廊行走時,由於 D* Lite 規劃出來的路徑與 wall following 的路徑 基本上長短相同,但 D* Lite 部分有編碼輪產生的誤差,而採用 wall following 則. -38-.

(49) 可以避免上述的誤差,因此我們在走廊採用 wall following。但是當機器人走到電 梯前的方型廣場時,D* Lite 規劃出來的路徑為直接走斜直線穿過廣場,而 wall following 產生的路徑為沿著牆行走,行走的路徑明顯的比 D* Lite 來的長,所以 機器人走在廣場時採用 D* Lite 產生的路徑。. 切換的方式為當機器人的超音波偵測到機器人離牆壁的距離為 60 公分以下, 則代表附近有牆壁可以進行 wall following,若機器人附近無東西則追蹤 D* Lite 規劃的路徑。其中在走廊的部分,D* Lite 規劃的路徑離牆壁的距離不一定會在 60 公分之內,則無法進行 wall following,我們希望能將 D* Lite 規劃出的路徑調 整在離牆壁 60 公分之內的位置,以下為我們所提出的想法:. 圖 5-30 為實驗的場地圖,圖 5-31 中(a)與(b)分別為寬度 200 公分及 160 公分 的走廊示意圖,由於一個格點的寬度為 40 公分,所以(a)為 4 格而(b)則為 5 格, 其中咖啡色的格子為障礙物(牆壁),而我們希望 D* Lite 規劃出的路徑能在黃色的 格子上。. (b). 200cm. 圖 5-30 場地示意圖. -39-. 160cm.

(50) (a) 圖 5-31. (b). 實驗走廊示意圖。(a)寬度為 200 公分之走廊、(b)寬度為 160 公分之走廊. 如圖 5-32,在 D* Lite 演算法中,將白色部分的格子的代價值加上 1,則可 以看出,若機器人在白色的格子上時,黃色格子的代價較白色格子的代價來的較 小,因此規劃路徑會切到黃色的格子中,即走到我們所希望的路徑上。. 圖 5-32 機器人在白色格子時周邊的代價. -40-.

(51) 第六章 實驗與模擬結果. 6.1 模擬結果 使用 MATLAB 軟體來模擬軌跡追蹤控制器追蹤八字形軌跡,機器人一開始 的座標為(0, 0),角度則為 0 度,其中(4-1)中的 k1  0.26 , k2  0.25 , k3  0.0005 , k4  2 , k5  0.0026 , k6  1.077 ,運動學控制器(3-9)中的 1 設計為 7.2,  2 設計為. 15,而  3 設計為 0.015。(4-24)式中的 Λ  [5,0; 0, 6],(4-13)中的操作點 Vdo  [0, 0]T , Vo  [0, 0]T。(4-26)式中的 1  0.03,(4-27)式中的 2  0.03,(4-37)式中的 kv1  100 、. kv 2  60 、 1  0.005 、  2  0.008 。八字型的參考軌跡方程式設計如下。   t   cos  12.5  2  ,     if (25  t  12.5  25 ) xr   cos     t  ,   2 12.5    if (12.5  25  t  25  25 )   t    , 1  sin  12.5 2      if (50  t  12.5  50 )  yr   or (37.5  50  t  50  50 )   3  sin     t   ,   2 12.5     if (12.5+50  t  37.5  50 ). 其中   0,1, 2,. ,以下為模擬結果。. -41-.

(52) 3.5 3. y (m). 2.5 2 1.5 1 0.5 0. -2. -1.5. -1. -0.5. 0 x (m). 0.5. 1. 1.5. 2. 2.5. 圖 6-1 機器人的實際路徑(藍色實線)與參考路徑(紅色虛線) 0.04 0.03 0.02. m. 0.01 0 -0.01 -0.02 -0.03 -0.04. 0. 0.5. 1. 1.5. 2. 2.5 Time (s). 3. 3.5. 圖 6-2 機器人 x 座標的誤差. -42-. 4. 4.5. 5 4. x 10.

(53) 0.1. 0.05. m. 0. -0.05. -0.1. -0.15. -0.2. 0. 0.5. 1. 1.5. 2. 2.5 Time (s). 3. 3.5. 4. 4.5. 5 4. x 10. 圖 6-3 機器人 y 座標的誤差 3. 2. degree. 1. 0. -1. -2. -3. -4 0. 0.5. 1. 1.5. 2. 2.5 Time (s). 3. 3.5. 圖 6-4 機器人角度的誤差. -43-. 4. 4.5. 5 4. x 10.

(54) 0.6 0.5 0.4 0.3. m/s. 0.2 0.1 0 -0.1 -0.2 -0.3 -0.4. 0. 0.5. 1. 1.5. 2. 2.5 Time (s). 3. 3.5. 4. 4.5. 5 4. x 10. 圖 6-5 機器人的速度. 0.4. 0.2. rad/s. 0. -0.2. -0.4. -0.6. -0.8. 0. 0.5. 1. 1.5. 2. 2.5 Time (s). 3. 圖 6-6 機器人的角速度. -44-. 3.5. 4. 4.5. 5 4. x 10.

(55) 6.2 實驗結果 在這個章節,我們使用機器人 Pioneer 3-DX (如圖 6-7)去驗證運動學控制器和 動態控制器的有效性和可行性。. 圖 6-7 為控制器的整體架構,控制器可分成 2 個部分,運動學控制器與 TSK 模糊控制器,先設計參考軌跡 q r 與參考速度 v r,透過運動學控制器產生期望速度 v c , 再藉由 TSK 模糊控制器來計算控制力 v d ,更新法則是在外部干擾發生變化時, 可以做即時的修正。 Update Laws. vc. vr pi pg. D* Lite Algorithm. qr +. Kinematic Controller. TSK Fuzzy Controller. Wheeled Mobile Robot. vd. v Dynamics. Kinematics. q. -. 圖 6-7 控制器的整體架構 首先先跑八字型來驗證控制器的有效性和可行性,其中(4-1)中的 k1  0.26 , k2  0.25 , k3  0.0005 , k4  2 , k5  0.0026 , k6  1.077 ,運動學控制器(3-11)中. 的 1 設計為 13.5, 2 設計為 60,而  3 設計為 16。(4-24)式中的 Λ  [5,0; 0, 6],(4-13) 中的操作點 Vdo  [0, 0]T,Vo  [0, 0]T。(4-26)式中的1  0.03,(4-27)式中的 2  0.03,. (4-37)式中的 kv1  100 、 kv 2  60 、 1  0.005 、 2  0.008 。八字型的參考軌跡方程式 設計如下。   t   cos  50  2  ,     if (100  t  50  100 ) xr   cos     t  ,   2 50    if (50  100  t  100  100 ). -45-.

(56)   t   1  sin     ,  50 2     if (200  t  50  200 )  yr   or (150  200  t  200  200 )   3  sin     t   ,   2 50     if (50+200  t  150  200 ). 其中   0,1, 2,. ,以下為實驗結果。. y m. 0.5. y(m). 0.0. 0.5. 3.0. 2.5. 2.0. 1.5. 1.0. xx(m) m. 圖 6-8 機器人的實際路徑(藍色)與參考軌跡(紅色). -46-. 0.5. 0.0.

(57) 0.1. m. 0.0. 0.1. 0.2. 0.3 0. 50. 100. 150. 200. 250. 300. 350. 300. 350. Times (s) time. 圖 6-9 機器人 x 座標的誤差. 0.3. 0.2. m. 0.1. 0.0. 0.1. 0.2. 0. 50. 100. 150. 200. 250. time Times (s). 圖 6-10 機器人 y 座標的誤差. -47-.

(58) 30 25. 20. 度. 15. 10. 5 0 0. 50. 100. 150. 200. 250. 300. 350. time Times. (s) 圖 6-11 機器人角度的誤差 1 0. m s. 1 2. m/s. 3 4 5 6 0. 50. 100. 150. 200. Time time s(s). 圖 6-12 機器人的速度. -48-. 250. 300. 350.

(59) 1.5. rad/s. rad s. 1.0. 0.5. 0.0. 0. 50. 100. 150. 200. 250. 300. 350. time s(s) Time 圖 6-13 機器人的角速度. 接著加上 D* Lite 演算法,由 D* Lite 規劃出一條巡邏路徑 q r ,將其當作機 器人的參考軌跡,而其中的 v r 參考速度和參考角速度由路徑規劃給出的兩點座標 (如圖 6-14)經由計算得出. 其中 1  arctan(. vr  ( y2  y1 )2  ( x2  x1 )2 / tr. (6-1). r  (2  1 ) / tr. (6-2). y2  y1 y y ) , 2  arctan( 3 2 ) x2  x1 x3  x2. 其中 vr 為參考速度, r 為參考角速度, x1 、 y1 和 1 為機器人目前的座標和角度, x2 、 y2 和  2 為機器人下一時刻的座標和角度, tr 為設計出來的希望兩點間要走多. 少時間。. -49-.

(60) 圖 6-14 位置示意圖. 整體方案的控制器如圖 6-15,p i 和 p g 分別代表機器人一開始的位置和目的地 的位置。由 D* Lite 演算法來做軌跡規劃。圖 6-15 為加入路徑規劃後控制器的整 體架構,先給定機器人的起點與終點,用 D* Lite 來規劃路徑,得到機器人的參考座標, 再透過本文所提供的控制器使機器人能沿著路徑前進,成功抵達目的地。. Update Laws. vc. vr pi pg. D* Lite Algorithm. qr +. Kinematic Controller. TSK Fuzzy Controller. Wheeled Mobile Robot. vd. v Dynamics. Kinematics. q. -. 圖 6-15 加入路徑規劃後控制器的整體架構 本實驗機器人起點設於格點(75, 8),終點定於格點(5, 15)。先透過 D* Lite 規劃 路徑,在使用本文所提的控制器追蹤軌跡,其中(4-1)中的 k1  0.26 , k2  0.25 , k3  0.0005 , k4  2 , k5  0.0026 , k6  1.077 ,運動學控制器(3-11)中的 1 設計為. 1.2,  2 設計為 5,而  3 設計為 2。(4-24)式中的 Λ  [5,0; 0, 6] ,(4-13)中的操作點 Vdo  [0, 0]T , Vo  [0, 0]T 。(4-26)式中的 1  0.03 ,(4-27)式中的 2  0.03 ,(4-37). 式中的 kv1  100 、 kv 2  60 、 1  0.04 、  2  0.016 ,追每一點的時間設計為 0.2 秒,程 -50-.

(61) 式執行一次的時間為 0.1 秒,參考軌跡中兩點間的距離為 4 公分。,以下為實驗結果。. 圖 6-16 機器人的實際路徑(藍色)與參考軌跡(紅色) 0.7 0.6 0.5. m. 0.4 0.3 0.2 0.1 0.0 0.00. 0.05. 0.10. 0.15. Time time s (s). 圖 6-17 機器人 x 座標的誤差. -51-. 0.20. 0.25.

(62) 0.6. m. 0.4. 0.2. 0.0. 0. 50. 100. 150. 200. 250. 200. 250. Time time s (s). 圖 6-18 機器人 y 座標的誤差. 40. 度. 20. 0. 20. 40 0. 50. 100. 150. Times (s) time. 圖 6-19 機器人角度的誤差. -52-.

(63) 2.5 2.0. m s. 1.5. m/s. 1.0 0.5 0.0 0.5 1.0 0. 50. 100. 150. 200. 250. 200. 250. time (s) s Time 圖 6-20 機器人的速度. 0.2. rad s. 0.0. rad/s 0.2. 0.4. 0. 50. 100. 150. Time time (s) s. 圖 6-21 機器人的角速度 輪型機器人之輪胎視為消耗品,雖然輪胎內框為金屬製的,但是輔助輪以及 外胎材質為塑膠,在經過長時間的實驗後,可能會造成輪胎磨損,造成編碼器的 誤差,以致於編碼器紀錄位置與機器人實際位置間有誤差。因此,本實驗使用超 -53-.

(64) 音波感測器當作路徑規劃的輔助,在已知的地圖中,利用超音波離牆壁的距離當 作參考輸入,來修正編碼器本身的誤差,調整機器人目前的位置。用超音波來量 測距離,若超音波感測器與障礙物平面保持垂直則回傳的距離資訊會較為準確。 反之,若超音波感測器與障礙物平面不完全保持垂直,則反射的超音波將會衰減, 而量測到的距離與實際距離間的誤差會越大,甚至可能接收不到回傳的超音波, 導致回傳的距離值顯示輪型機器人離障礙物還很遠,造成判斷錯誤。. 第三個實驗起點與終點與第二個實驗一樣,但在行走過程中,走廊部分使用 超音波感測器來進行 wall following,而在電梯前的空地則切換為 D* Lite 路徑規 劃,參數設計與第二個實驗相同,以下為實驗結果圖。. 圖 6-22 機器人的實際路徑(藍色)與參考軌跡(紅色). -54-.

(65) 0.3. m. 0.2. 0.1. 0.0. 0.1. 0.2 0. 50. 100. 150. 200. Timetime (s) s 圖 6-23 機器人 x 座標的誤差 0.3. 0.2. m. 0.1. 0.0. 0.1. 0. 50. 100. 150. Times (s) time. 圖 6-24 機器人 y 座標的誤差. -55-. 200.

(66) 40. 度. 20. 0. 20. 40 0. 50. 100. 150. 200. Time (s) s time 圖 6-25 機器人角度的誤差. m s. 60. m/s. 40. 20. 0 0. 50. 100. 150. Time (s). time s. 圖 6-26 機器人的速度. -56-. 200.

(67) 0.0 0.5. rad s. 1.0. rad/s. 1.5 2.0 2.5 3.0 0. 50. 100. 150. 200. time (s) s Time 圖 6-27 機器人的角速度. 第四個實驗起點與終點與第二個實驗一樣,但在離起點約 200 公分處加上一 障礙物,使機器人避開障礙物,觀察機器人若偏離原先路徑後是否有修正的能力。 參數設計與第二個實驗相同,以下是實驗結果。. 圖 6-28 機器人的實際路徑(藍色)與參考軌跡(紅色). -57-.

(68) 0.6. 0.5. m. 0.4. 0.3. 0.2. 0.1. 0.0 0.00. 0.05. 0.10. 0.15. 0.20. Time time (s) s 圖 6-29 機器人 x 座標的誤差. m. 0.4. 0.2. 0.0. 0.2 0. 50. 100. time s(s) Time 圖 6-30 機器人 y 座標的誤差. -58-. 150. 200.

(69) 40. 度. 20. 0. 20. 40 0. 50. 100. 150. 200. 150. 200. Time time s(s). 圖 6-31 機器人角度的誤差. 2.5 2.0. m s. 1.5. m/s. 1.0 0.5 0.0 0.5 1.0 0. 50. 100 time(s)s Time 圖 6-32 機器人的速度. -59-.

(70) 0.2. rad s. 0.0. rad/s. 0.2. 0.4. 0. 50. 100. 150. 200. Time time(s)s 圖 6-33 機器人的角速度. 第五個實驗起點與第二個實驗一樣,但要證實機器人能在整層樓巡邏,終點 設計為(2, 98)。但機器人可能由於輪胎的磨損等等原因,使得編碼器的值與真 實地圖上的座標不完全符合,因此需要由外界進行修正,實驗五在圖上的 4 個參 考點修正機器人,參數設計與第二個實驗相同,以下是實驗結果。 修正點 1. 修正點 3. 修正點 2. 修正點 4. -60-.

(71) 圖 6-34 機器人的實際路徑(藍色)與參考軌跡(紅色). 0.5. m. 0.0. 0.5. 1.0. 1.5. 2.0 0. 修正點 1. 100. 200 修正點 2. 300 修正點 3 Time (s)s time. 400 修正點 4. 500. 圖 6-35 機器人 x 座標的誤差 0.6 0.4 0.2. m. 0.0 0.2 0.4 0.6 0.8 0. 修正點 1. 100. 200 修正點 2. 300 400 修正點 3 修正點 4 Time (s) s time. 圖 6-36 機器人 y 座標的誤差. -61-. 500.

(72) 40. 度. 20. 0. 20. 40 0. 修正點 1. 100. 修正點 2. 200. 300 修正點 3 Time time(s) s. 400 修正點 4. 500. 圖 6-37 機器人角度的誤差. 2.5 2.0. m s. 1.5 1.0. m/s. 0.5 0.0 0.5 1.0 0. 修正點 1. 100. 200 修正點 2. 300 400 修正點 3 修正點 4 Time (s) s time. 圖 6-38 機器人的速度. -62-. 500.

(73) 0.2. rad s. 0.0. rad/s. 0.2. 0.4. 0. 修正點 1. 100. 200 修正點 2. 300 修正點 4 400 修正點 3 time (s) s Time. 圖 6-39 機器人的角速度. -63-. 500.

(74) 第七章 結論. 在本文中,我們設計並結合了路線規劃與軌跡追蹤演算法。首先,設計一個 兩層的軌跡追蹤控制器,分別為機器人的運動學控制器和動態模型控制器。透過 運動學模型,機器人位置與角度的誤差可以有效地趨近於零。另外,使用 TSK 模糊控制器能讓機器人移動速度與角速度的誤差趨近於零。先進行電腦模擬,我 們使用 MATLAB 軟體來模擬輪型機器人追蹤 8 字形軌跡,模擬結果顯示出追蹤 軌跡十分逼近參考軌跡。接著進行實際實驗,用此兩層的軌跡追蹤控制器來控制 輪型機器人追 8 字形軌跡,實驗結果誤差仍在容許範圍內,證明了此提出的控制 器是有效的。. 再來加入路徑規劃部分,先給定輪型機器人目前的位置與希望達到的目的地, 使用 D* Lite 演算法來設計最短路徑以此做為輪型機器人的行走路線。透過此論 文提出的軌跡追蹤控制器使輪型機器人能夠成功地抵達目的地。最後,我們在台 灣師範大學科技大樓 5 樓走廊進行實際上的實驗,透過實驗結果驗證了該設計方 案的有效性與可行性。. 但上述之方法皆使用編碼器所計算出來的值來當作機器人的座標,但是當機 器人的輪胎磨損或輪子歪掉的情形下,環境真實的座標與編碼器所計算的值可能 會有較大的誤差,為了修正此誤差,本篇論文先使用手動修正,在機器人行走時, 於軌跡上的數點輸入機器人實際的座標來進行修正,使控制器收到的座標盡量與 環境座標一致。未來可能會使用攝影機架在環境中的數點,透過影像來得知機器 人目前真實的座標已修正上述之誤差。. -64-.

參考文獻

相關文件

2 System modeling and problem formulation 8 3 Adaptive Minimum Variance Control of T-S Fuzzy Model 12 3.1 Stability of Stochastic T-S Fuzzy

[23] Tiantong You, Hossam Hassanein and Chi-Hsiang Yeh, “PIDC - Towards an Ideal MAC Protocol for Multi-hop Wireless LANs,” Proceedings of the IEEE International Conference

Kyunghwi Kim and Wonjun Lee, “MBAL: A Mobile Beacon-Assisted Localization Scheme for Wireless Sensor Networks,” The 16th IEEE International Conference on Computer Communications

C., “Robust and Efficient Algorithm for Optical Flow Computation,” Proceeding of IEEE International Conference on Computer Vision, pp. “Determining Optical Flow.” Artificial

When? Where? What? A Real-Time System for Detecting and Tracking People.’’ Proc. International Conference on Face and Gesture Recognotion, April, pp. Pentland, “Pfinder:

Kyunghwi Kim and Wonjun Lee, “MBAL: A Mobile Beacon-Assisted Localization Scheme for Wireless Sensor Networks”, the 16th IEEE International Conference on Computer Communications

Plumbley, “Beat Tracking with a Two State Model,” IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP 2005), vol. Honing, “Computational

[3] Ke Xiaolong, “Study on Software and Hardware Control of High-precision Measurement Platform for Optical Aspheric Surface”, 2009 IEEE International Conference on