系統識別號 | U0002-2807200504112300 |
---|---|
DOI | 10.6846/TKU.2005.00704 |
論文名稱(中文) | 全方位移動控制演算法與USB協定處理器之FPGA實現與應用 |
論文名稱(英文) | Design and Implementation of Omni-directional Mobile Control Algorithm and USB Protocol Processor on FPGA Chips and Their Applications |
第三語言論文名稱 | |
校院名稱 | 淡江大學 |
系所名稱(中文) | 電機工程學系碩士班 |
系所名稱(英文) | Department of Electrical and Computer Engineering |
外國學位學校名稱 | |
外國學位學院名稱 | |
外國學位研究所名稱 | |
學年度 | 93 |
學期 | 2 |
出版年 | 94 |
研究生(中文) | 王威文 |
研究生(英文) | Wei-Wen Wang |
學號 | 692380024 |
學位類別 | 碩士 |
語言別 | 繁體中文 |
第二語言別 | |
口試日期 | 2005-06-10 |
論文頁數 | 81頁 |
口試委員 |
指導教授
-
翁慶昌(wong@ee.tku.edu.tw)
委員 - 李祖聖(thsli@mail.ncku.edu.tw) 委員 - 龔宗鈞(cckung@ttu.edu.tw) 委員 - 楊智旭(jrsyu@tedns.te.tku.edu.tw) 委員 - 王文俊(wjwang@ee.ncu.edu.tw) |
關鍵字(中) |
全方位移動機器人 USB搖桿 VHDL FPGA 無線通訊 SoPC |
關鍵字(英) |
Omni-directional mobile robot USB joystick VHDL FPGA Wireless communication SoPC |
第三語言關鍵字 | |
學科別分類 | |
中文摘要 |
本論文首先提出一個快速的全方位移動控制演算法,其可以改善目前大多數全方位移動機器人之運動控制演算法需要透過電腦主機做大量運算以及難以用數位邏輯電路加以實現的缺點。本論文以向量、合力、三角函數、浮點數運算轉換等數學原理,提出一個從指令接收到做出判斷僅需要一個工作時脈(clock)之高速運算的全方位移動控制演算法,所提方法可以很容易地用硬體描述語言VHDL (VHSIC Hardware Description Language)設計並且實現於FPGA (Field Programmable Gate Array)晶片中。在所提方法的應用上,本論文藉由三個全方位輪(Transwheel)以及三輪底座機構的設計,同時採用高效能減速齒輪箱、馬達回授訊號分析、PWM速度調變產生器等設計實現一個全方位移動機器人(Omni-directional Mobile Robot),使機器人可以做出任意角度前後左右平移或在移動中進行轉動等動作。此外,本論文提出一個不需要使用任何市面上販售的USB OTG (Universal Serial Bus On-The-Go)協定處理器晶片,即可控制USB搖桿的矽智財(Silicon Intellectual Property; SIP),並且整合其他IP以VHDL實現於FPGA晶片中。本文以USB裝置之兩條訊號線C+與C-的差動方式,配合使用NRZI (Non-Return to Zero Inverted)與位元填塞 (Bit-stuffing)等編解碼方法來傳遞資料。最後,本論文實現一個 RS232無線通訊系統,讓操作者可以透過無線傳輸模組以USB搖桿來遙控全方位移動機器人,進而實現一個具有四個USB搖桿之遠端遙控遊戲平台來驗證所提方法確實可以做一個完整的實際應用。 |
英文摘要 |
In this thesis, a quick omni-directional mobile control algorithm is first proposed. It can improve the disadvantages that most motion control algorithms for the omni-directional mobile robots need a huge operation through the computer and are hard to be realized by using the digital logic circuit. The concepts of vectors, resultant of forces, trigonometric functions, and floating point arithmetic are applied to design this omni-directional mobile control algorithm that needs only one working clock form getting a command to output its result. This high-speed algorithm can be easily to be designed by using VHDL (VHSIC Hardware Description Language) and implemented on a FPGA (Field Programmable Gate Array) chip. In the application of the implemented FPGA chip, three omni-directional wheels (Transwheel), three-wheeled mechanism, three high efficiency gear boxes, a PWM speed modulation generator, and motor feedback signal analysis are applied to implement an omni-directional mobile robot so that the robot can move in any direction and rotate as moving. Furthermore, a SIP (Silicon Intellectual Property) and the other IP are designed to control USB joysticks by using VHDL and implemented on a FPGA chip so that we don’t need any USB OTG (Universal Serial Bus On-The-Go) protocol processor chip. The USB signal lines C+ and C- by differential action and the coding style of “NRZI (Non-Return to Zero Inverted)” and bit-stuffing are applied to transmit data. A RS232 wireless communication system is implemented so that the operator can use an USB joystick to control the omni-directional mobile robot through a wireless communication module. Finally, a remote controlled game platform by four USB joysticks is implemented to verify that the proposed methods indeed can be applied practically and completely. |
第三語言摘要 | |
論文目次 |
目錄 第一章 緒論 ………………………………………………………… 1 1.1 前言………………………………………………………………… 1 1.2 VHDL硬體描述語言…………………………………………… 2 1.3 數位邏輯元件FPGA…………………………………………… 3 1.4 MAX+PLUS II數位電路設計開發環境…………………… 5 1.5 論文架構 ………………………………………………………… 8 第二章 全方位控制演算法……………………………………… 9 2.1 全方位移動系統之機構設計方式…………………………… 10 2.2 全方位輪………………………………………………………… 13 2.3 全方位移動控制演算法……………………………………… 16 2.3.1 全方位移動控制演算法之特性…………………………… 16 2.3.2 全方位移動控制演算法之設計流程……………………… 17 2.4 以FPGA實現全方位控制器………………………………… 25 第三章 全方位移動機器人之設計與實現………………… 31 3.1 全方位移動機器人之功能設計……………………………… 32 3.2 FPGA晶片之電路規劃……………………………………… 33 3.2.1 無線傳輸接收模組………………………………………… 34 3.2.2 回授馬達控制模組………………………………………… 35 3.2.3 LCM文字型顯示面板控制模組…………………………… 36 3.3 三層式電路板設計……………………………………………… 37 3.4 馬達…………………………………………………………………41 3.4.1 直流回授馬達……………………………………………… 41 3.4.2 高速齒輪箱………………………………………………… 42 3.5 全方位移動機器人硬體機構之設計與實現 ………………43 第四章 USB協定…………………………………………………… 45 4.1 USB系統架構 ………………………………………………… 46 4.1.1 USB主機 …………………………………………………… 46 4.1.2 電氣規格 …………………………………………………… 46 4.1.3 機構 ………………………………………………………… 46 4.2 USB通訊協定 ………………………………………………… 47 4.3 資料流動模式 ………………………………………………… 49 4.4 資料之編/解碼 ………………………………………………… 49 4.4.1 RS-232介面 ………………………………………………… 49 4.4.2 NRZI編碼 ………………………………………………… 50 4.4.3 位元填塞(Bit-stuffing) ……………………………………… 51 第五章 以FPGA實現USB協定處理器 ………………… 52 5.1 DIV4模組 ……………………………………………………… 55 5.2 CLOCK_RST模組……………………………………………… 56 5.3 CLOCK_1MS模組……………………………………………… 57 5.4 RECV模組 ……………………………………………………… 58 5.4.1 NRZI_RECV模組…………………………………………… 60 5.4.2 CRC16_PROCESS模組…………………………………… 61 5.4.3 RECV_PACKAGE模組…………………………………… 62 5.5 SENT模組……………………………………………………… 63 5.6 ACK模組………………………………………………………… 66 5.7 MAIN_CONTROL模組……………………………………… 67 5.8 MULT_USB模組……………………………………………… 70 5.9 USB搖桿控制無線發射端…………………………………… 74 第六章 全方位移動機器人與搖桿之操作流程…………… 75 6.1全方位移動機器人與搖桿之硬體介紹……………………… 75 6.2全方位移動機器人與搖桿之操作流程……………………… 78 第七章 結論與未來展望………………………………………… 80 參考文獻………………………………………………………………… 81 圖目錄 圖1.1 機器人移動能力比較圖…………………………………………… 2 圖1.2 MAX+PLUS II開發環境之架構圖………………………………… 5 圖1.3 MAX+PLUS II之多種電路設計方式開發環境視窗……………… 6 圖1.4 FPGA腳位規劃設定視窗…………………………………………… 6 圖1.5 波形模擬驗證與系統時序分析視窗……………………………… 7 圖1.6 程式下載FPGA晶片介面視窗…………………………………… 7 圖2.1 全方位移動系統之車輪配置方式圖……………………………… 10 圖2.2 三輪全方位機構之車體移動速度說明圖………………………… 11 圖2.3 四輪全方位機構之車體移動速度說明圖………………………… 11 圖2.4 四輪結構之XY軸分離控制方式示意圖………………………… 13 圖2.5 摩擦阻力之產生及其影響示意圖………………………………… 14 圖2.6 全方位輪硬體構造圖……………………………………………… 14 圖2.7 全方位輪與一般輪子在抵抗摩擦阻力之差異比較圖…………… 15 圖2.8 滾輪材質之設計…………………………………………………… 16 圖2.9 全方位控制演算法之設計流程圖………………………………… 18 圖2.10 全方位移動系統座標方位之定義圖……………………………… 19 圖2.11 全方位移動系統車體旋轉及車輪旋轉之定義圖………………… 19 圖2.12 六個基準移動方向與XY座標軸對應關係圖…………………… 20 圖2.13 全方位移動機器人朝方向(一)移動所需之三輪速度…………… 21 圖2.14 基準移動方向(四)與(五)合成X軸方向速度分力之合力圖…… 22 圖2.15 乘根號3電路之方塊圖…………………………………………………26 圖2.16 乘根號3電路之模擬圖………………………………………………… 26 圖2.17 全方位平移系統(不含旋轉量R)之方塊圖……………………… 27 圖2.18 全方位移動系統(含旋轉量R)之方塊圖………………………… 27 圖2.19 系統往正X軸、往正Y軸以及往45度移動之波形模擬圖…… 29 圖2.20 加入旋轉量Vr之波形模擬圖……………………………………… 29 圖2.21 系統獲得輸出結果只需一個振盪週期之示意圖………………… 30 圖3.1 全方位移動機器人之設計架構圖………………………………… 32 圖3.2 FPGA晶片之電路規劃架構圖……………………………………… 33 圖3.3 無線傳輸接收模組之方塊圖……………………………………… 35 圖3.4 回授馬達控制模組之方塊圖……………………………………… 35 圖3.5 不同電壓工作率所獲得之平均電壓示意圖……………………… 36 圖3.6 LCM文字型顯示面板控制模組之方塊圖………………………… 36 圖3.7 LCM文字型顯示面板顯示之資訊………………………………… 37 圖3.8 連接電路板之排針及排插實體圖………………………………… 37 圖3.9 上層電路板之正面、背面實體圖及PCB圖……………………… 38 圖3.10 中層電路板之正面、背面實體圖及PCB圖…………………… 38 圖3.11 底層電路板之正面、背面實體圖及PCB圖…………………… 39 圖3.12 三層電路板之實體連接俯視圖…………………………………… 40 圖3.13 全方位移動機器人控制電路板之實體圖………………………… 40 圖3.14 直流回授馬達之外觀及尺寸示意圖……………………………… 41 圖3.15 (a)高速齒輪箱之外觀圖 ; (b)齒輪箱連結全方位輪之硬體架構圖 42 圖3.16 全方位移動機器人硬體機構之3D模擬圖……………………… 43 圖3.17 全方位移動機器人之硬體機構實體圖…………………………… 44 圖4.1 USB連接器………………………………………………………… 47 圖4.2 USB交易之封包種類……………………………………………… 47 圖4.3 RS-232之資料封包格式…………………………………………… 50 圖4.4 NRZI之資料編碼…………………………………………………… 51 圖4.5 位元填塞之示意圖………………………………………………… 51 圖5.1 USB-OTG之列舉應用……………………………………………… 52 圖5.2 USB模組方塊圖…………………………………………………… 53 圖5.3 USB協定處理IP之電路設計連結圖……………………………… 54 圖5.4 DIV4模組之方塊圖………………………………………………… 55 圖5.5 DIV4模組之模擬圖………………………………………………… 55 圖5.6 CLOCK_RST模組之方塊圖………………………………………… 56 圖5.7 CLOCK_RST模組之模擬圖………………………………………… 56 圖5.8 CLOCK_1MS模組之方塊圖………………………………………… 57 圖5.9 USB訊框與交易之關係圖………………………………………… 57 圖5.10 CLOCK_1MS模組之模擬圖……………………………………… 58 圖5.11 RECV模組之方塊圖……………………………………………… 58 圖5.12 RECV模組之內部電路連接圖…………………………………… 58 圖5.13 RECV模組之模擬圖……………………………………………… 59 圖5.14 NRZI_RECV模組之方塊圖……………………………………… 60 圖5.15 NRZI_RECV模組之模擬圖……………………………………… 61 圖5.16 CRC16_PROCESS模組之方塊圖………………………………… 61 圖5.17 CRC16_PROCESS模組之模擬圖………………………………… 61 圖5.18 RECV_PACKAGE之方塊圖……………………………………… 62 圖5.19 SENT模組之方塊圖……………………………………………… 63 圖5.20 SENT模組之內部電路連接圖…………………………………… 63 圖5.21 SENT模組之模擬圖……………………………………………… 64 圖5.22 IN封包格式……………………………………………………… 64 圖5.23 NRZI_PROCESS模組之方塊圖………………………………… 65 圖5.24 NRZI_PROCESS模組之模擬圖………………………………… 65 圖5.25 SENT_PACKAGE模組之方塊圖………………………………… 65 圖5.26 SENT_PACKAGE模組之模擬圖………………………………… 65 圖5.27 ACK模組之方塊圖………………………………………………… 66 圖5.28 ACK封包之格式…………………………………………………… 66 圖5.29 ACK模組之模擬圖………………………………………………… 66 圖5.30 MAIN_CONTROL模組之方塊圖………………………………… 67 圖5.31 MAIN_CONTROL模組之狀態流程圖…………………………… 69 圖5.32 MAIN_CONTROL模組之模擬圖………………………………… 70 圖5.33 MULT_USB模組多工處理之方式………………………………… 71 圖5.34 MULT_USB模組之方塊圖………………………………………… 71 圖5.35 USB搖桿控制無線發射端實體圖………………………………… 74 圖6.1 全方位移動機器人及USB協定處理器之電源開關位置………… 75 圖6.2 USB搖桿之類比控制搖桿開關之按鈕位置……………………… 75 圖6.3 類比控制搖桿對應到全方位移動機器人移動之資訊…………… 76 圖6.4(a)~(f) 車體移動之實體連續照相圖……………………………… 77 圖6.5 將USB搖桿與發射端上所欲控制的機器人所屬連接埠連接…… 78 圖6.6 發射端連接埠偵測到USB搖桿後所屬之埠其使用指示燈會亮起 78 圖6.7 開啟USB搖桿上之類比控制搖桿功能開關……………………… 79 圖6.8 開啟全方位移動機器人之電源開關……………………………… 79 圖6.9 使用類比控制搖桿來操作全方位移動機器人…………………… 79 表目錄 表1.1 TTL元件與可程式邏輯元件之比較表…………………………… 4 表2.1 三輪配置方式與四輪配置方式之特性比較表…………………… 10 表2.2 各基準方向移動速度大小與三輪速度之對應表………………… 21 表2.3 X軸方向速度分力與三輪速度之轉換表………………………… 23 表2.4 移動速度轉換關係歸納表………………………………………… 23 表2.5 移動速度轉換關係簡化歸納表…………………………………… 24 表2.6 增加旋轉量R之轉換關係歸納表………………………………… 24 表2.7 以計算機計算之乘根號3值(Matlab計算)…………………………… 26 表2.8 全方位移動系統IP之腳位說明表………………………………… 28 表3.1 無線傳輸接收16位元並列資料之資訊說明表…………………… 34 表3.2 擴充控制機器人數量之協定封包格式…………………………… 34 表3.3 齒輪箱於不同應用需求上之轉速比……………………………… 42 表4.1 封包欄位之意義表………………………………………………… 48 表4.2 PID之形式說明表…………………………………………………… 48 表5.1 USB模組之信號說明表…………………………………………… 53 表5.2 MULT_USB模組之信號說明表…………………………………… 72 |
參考文獻 |
參考文獻 [1] ALTERA, FLEX 10K Embedded Programmable Logic Family Data Sheet, 2003. [2] Homepage of ALTERA: http://www.altera.com/ [3] Homepage of DC Micro motors: http://www.faulhaber-group.com/ [4] Homepage of NRC Engineering & Trading Co., Ltd.: http://www.mrc.com.tw/ [5] Homepage of omni-wheel: http://www.omniwheel.com/ [6] Homepage of USB: http://www.usb.org/developers/docs.html [7] 林傳生,使用VHDL電路設計語言之數位電路設計,儒林圖書,1998。 [8] 唐佩忠,VHDL與數位邏輯設計,高立圖書,1999。 [9] 蕭如宣,VHDL數位系統電路設計,儒林圖書,1999。 [10] 陳慶逸、林柏辰,VHDL數位電路實習與專題設計,文魁資訊,2003。 [11] 賈證主,VHDL數位設計做中學,台科大圖書股份有限公司,2003。 [12] 立雅科技,SolidWorks 2004實戰演練─基礎篇,知城數位,2003。 [13] 柯南,Protel99SE PCB電腦輔助電路圖設計,台科大圖書股份有限公司,2001。 [14] 郭士秋,USB理論規範與設計,儒林圖書,2001。 [15] 蕭世文,USB2.0硬體設計,文魁資訊,2002。 |
論文全文使用權限 |
如有問題,歡迎洽詢!
圖書館數位資訊組 (02)2621-5656 轉 2487 或 來信