


下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、采用帶軟處理器的FPGA實現機器人車輛控制器從玩具到移動家用電器,簡單的機器人應用正呈蓬勃發展之勢,這些機器人應 用都依賴某種處理器。一些產品采用 8位MCU而另一些采用定制芯片或分立 元件實現。借助當今的先進技術,工程師可以在無需考慮外形尺寸的條件下, 利用現有的單片半導體器件實現一個完整的自主機器人車輛 (ARV)控制器。本文 將探討如何采用帶軟處理器的FPGA來打造這樣的控制器。首先采用 FPGA外加 一個串行配置設備、兩個 H橋馬達驅動器、一個模數轉換器(ADC)、一個從玩具到移動家用電器,簡單的機器人應用正呈蓬勃發展之勢,這些機器人應 用都依賴某種處理器。一些產品采用 8位MCU而另
2、一些采用定制芯片或分立 元件實現。借助當今的先進技術,工程師可以在無需考慮外形尺寸的條件下, 利用現有的單片半導體器件實現一個完整的自主機器人車輛 (ARV)控制器。本文 將探討如何采用帶軟處理器的 FPGA來打造這樣的控制器。首先采用FPGA外加一個串行配置設備、兩個 H橋馬達驅動器、一個模數轉換器 (ADC)、一個三軸加速器、一個DC/DC電源轉換器、擴展/傳感器連接器和各種 輔助元件來實現一個簡單的軌道式(tracked)ARV。該FPGA被配置成一個完整的系統級芯片(SoC),它是整個設計的關鍵所在。在 該SoC結構內,包含一個32位軟核處理器、RAM/ROM兩個串行通信塊和兩個 馬達
3、控制塊。該SoC采用最小的Cyclone III FPGA(EP3C5)實現的,這款含有 5000個邏輯單元的器件具有充分的空間來增加所需的其它功能(圖1)。與Cyclone III 類似,大部分FPGA都是基于SRAM勺。因此,它們需要配置數 據資源。在本例中采用的是一款 Altera串行配置器件,稍后將討論這種器件帶 來的其它可能性。ARV架構的基礎該SoC的核心是一顆32位Nios II軟核處理器。由于它是基于 FPGA來實現, 因此可以根據設計功能的需求很容易地對其進行擴展或性能改善(圖2)。有許多因素決定著處理器的選擇,如所需的處理能力、需要/可用的存儲器、代碼空間、所選FPGA內的
4、布線空間以及最終系統成本。我們的初始項目是基于Nios II/e 器件,這使得采用密度最低的 Cyclo ne III FPGA 以及小尺寸封裝成 為可能。存儲器是關鍵因素。在這類嵌入式設計中,既可采用內部又可采用外部存儲器。盡管選擇的FPGA艮制了內部RAM/RO的大小,但內部存儲器允許更小的占板面積并能降低成本。事實上,外部存儲器可實現任何密度和數據通路帶寬。對于機器人車輛來說,由于可用功率的限制,開發者需對整個設計施加一些約 束。外部存儲器主要有SRAM和DRAM兩種類型,它們具有多種密度和封裝類 型。有 4 個主要因素影響器件的選擇:所需的最小密度與可用密度;功率約束,這 是因為AVR
5、的可用功率有限;存取和處理器速度;FPGAf存儲器和I/O器件進 行連接的可用I/O引腳數。其它約束條件包括:封裝、成本及為針對 FPGA預置 的接口 IP。Cyclone III FPGA 能夠根據不同電壓水平或多功能接口 (PCI、差分信令)進行 I/O 分組。目前可用的知識產權 (IP) 包括大量通信、存儲器和傳統模塊。處理器代碼存儲(通常采用閃存器件)完全取決于ARV勺功能以及設計工程師是 否打算采用實時操作系統(RTOS對于小型ARV來說,利用配置器件存儲代碼 免除了對系統提供存儲器件的要求并降低了功率。Cyclone III的FPGA引腳是專用的,因此無需額外的引腳,并有可能降低整
6、體成本。對于無法使代碼與配置器件相匹配或不適應這種方法的設計工程師來說,有兩 種不同的閃存接口可以使用:即串行和并行。器件的密度以及電路板空間將影 響這一決定或發展方向。由于它們具有相似的密度,因此兩種類型的密度問題 匯聚成為一個問題。連接物理部分的接口是掛接部分 (clinching entity) 。 (這一分析基于 16位數 據路徑。 )并行組件會用到約 44 個 I/O 引腳。相同密度的串行組件則將使用約 6個I/O引腳。(串行閃存為x8。)FPGA與組件IP的接口必須適應向x16格式 的轉換。引腳數又一次成為重要因素,它可以影響器件的物理尺寸。如果采用了操作系 統,則必須具有面向可用
7、接口的驅動器。否則就要花費精力自己構建。馬達控制 對ARM運動和控制來說,馬達驅動和控制是最基本的。最簡單的馬達控制包 含一個負責處理電流負載的驅動器和一個單獨的 I/O 引腳。該引腳主要進行打 開/關斷(流通/截止)操作,但涉及ARV的整體運動性能時,該方法尚有很多不 足之處。下一步是利用脈寬調制器(PWM來控制速度(用FPGA可以很容易地實現PWM) 速度控制允許減速至停止狀態或加速至一個固定速度 ( 類似汽車 ) 。在不具備汽 車類型轉向控制或帶有軌道的 ARV應用中,這種轉向方法被稱為“滑動轉向 (skid steering) 。”基本上,被減速或停止的驅動側是擬轉向的方向。停止或減速
8、的時間將決定轉向的次數。外部驅動可以是采用分立器件構建的H橋(有刷電機)或帶有內置FET(用于控制電流)的單芯片。ARV實例包括兩個針對基本分立器件 H橋控制配置的馬達IP塊。PWM勺輸出通 過兩個引腳中的一個被路由至該 H橋。運動方向決定著路由引腳。另一個引腳 接地。驅動安全性是一個值得考慮的問題。一種可確保安全的簡單方法是在任何指定 時間監控流經橋的電流量。對于采用分立器件的橋來說,可以用一個ADC和一個低阻值精密電阻來實現。從FPGA到ADC勺接口取決于所需的引腳數及 ADC分辨率。現在日益流行的串行 外設接口 (API)ADC可提供高數據傳輸速率。本文例子中的 ARV采用的就是SPI
9、ADC。該處理器可在運動的設定間歇時間讀取采樣值并將其與設定的故障參數進行比 較。大多數帶有集成FET的單芯片方案具有內置熱/電流安全保護功能(關閉輸 入/輸出),并設置了用戶可參考的標記或標記群。用戶應將這些功能設為高優 先級。否則,ARV馬達控制器有可能會損壞。在理想情況下,每個馬達都應具有速度監控器。這使得ARV可以移動地設定距離而不會受到遠程控制器的干涉。監控器可以是霍爾效應變換器或光電斷路 該IP是一個時鐘輸入來自該霍爾變換器或光電斷路器的簡單計數器。第二個時 鐘源用于設定樣本大小。這已成為設計工程師所偏愛的方式,但計數器越大, 能耗也就越高。一個500ms的樣本可在32位的計數器內
10、保留大多數設計,在這種情況下計數器 可與內部 Nios-II 數據總線匹配。第二個源時鐘將計數器數據存入讀寄存器用 于訪問處理器并將該計數器復位為零。利用軌道式ARV設計工程師為驅動齒鏈的每個循環計算該值,軌道移動“x”以英寸表示,在大型設備上以英尺計。借助該常數,處理器可計算其前行或后 退了多少距離。例如,常數“ x” =4英寸/轉,距離=“x”x轉數,40英寸=4英寸/轉X 10轉 計算起來很簡單,但對許多應用來說足夠了。速度計數器還能通知處理器出現 滑動或軌道擁堵狀況,這種情況表現為橋電流上升。引導系統實際上在所有系統內,引導系統都是一個關鍵部分,而在ARV內,引導系統更復雜、所占體積更
11、大。在非常小的 ARV或玩具內,基于空間和成本方面的考 慮,引導系統通常是個奢侈品。微機電系統(MEMS的引入允許更小的單元以更輕的重量、更低的功耗及成本擁 有完整的引導系統。MEM可直接連接FPGA本文討論的兩個引導項目是加速計和陀螺儀。加速計提供模擬或數字接口; 1 個、 2個或 3個軸;以及不同的“加速度 (g) ”等級。因此,應當采用數字 SPI 加速計以減少所用的元件數。這樣還將減小在連接 ADC的模擬線路上被噪聲干 擾的機會。X和Y軸通常可用于確定上/下傾斜或左/右傾斜。Z軸則表示ARV旋 轉時的速率和方向。增加陀螺儀可簡化一些工作。首先要添加的陀螺儀位于Z軸。單個Z軸能夠很方便地
12、決定減速或停止一條軌道 (用于轉向操作 )的時間。陀螺儀將顯示從初始 參考點開始已旋轉的度數。如果ARV從點A移動到點B(沿一條直線除外),則該信息沒有價值。增加 X和丫 軸可允許處理器以地球表面為參照對 ARV勺實際位置“畫” 一幅心理圖像。對 那些需要全部信息的應用來說,一部分 MEM模塊包括三軸加速計和三軸陀螺 儀。傳感器和通信傳感器是機器人感知世界的唯一途徑。在開發 ARV過程中用到的大多數傳感器 是SPI/I2C或模擬的。此時仍需要用 ADC在模擬傳感器和FPGA之間建立連接。如果想要將I/O引腳數減到最少,那么可采用僅需兩個引腳的 I2C。但它的最 高數據傳輸速率為3.4MHz,另
13、一方面,SPI需要更多的引腳,但其傳輸速率可 達 12.5MHz。傳感器對于ARV的前部單元而言非常重要,它用于指示“路上有東西”、“到 了世界盡頭”或“別碰我腦袋。”這些描述代表路上有東西、突然失去驅動表 面(例如一個大洞、樓梯邊沿或懸崖)以及ARVS過時必然會受損的低懸物體。與ARV的通信總是使事情更有趣且增加了靈活性。許多無線模塊采用標準UART進行處理器通信。通過創建低沖擊 (low-impact) 協議,數據可在操作者和 ARV 之間傳遞。這使得速度、方向甚至傳感器的限制都能得到改善。通過通信鏈 路,研究數據還可以從傳感器數據包送回。將組件整合為一個工作系統現在到了把所有這些組件放入
14、一片 FPGA勾成一個工作系統的時候了。初始項目 包含一個Nios II/e 處理器、8KB內部RAM兩個SPI總線模塊、兩個帶有速度 計數器的馬達模塊、兩條中斷線路 (用于加速計)以及增加其它 I/O 和傳感器的能力。該項目在最小型的 QFP封裝內采用現有密度最低的 Cyclo ne III 器件(圖 3)。前文中例子討論的是簡單 ARV但真實的機器人世界并非如此簡單。目前的 FPGA可控制一個8輪驅動ARV這個ARV可采用不同的“有效負載”功能選 擇。該單元采用了 4個32位Nios II處理器,它們負責如下整體功能:主處理器:做出最終決策、處理整體路徑移動、負責與現實世界通信以及管理 有
15、效負載接口。引導處理器:負責采集來自慣性測量單元(加速計和陀螺儀)、GPS莫塊以及過 濾/導航算法的連續數據。傳感器處理器:該器件不停地與觀察 ARV周圍環境的傳感器陣列,以及專用傳 感器(即甲烷監視器、氧氣監視器)通信;它包括從智能光檢測和測距(激光雷達) 單元發回的數據。馬達處理器:該部分控制驅動單元(不限于電動馬達),也被用于液壓系統;在 電子系統中,它控制每個馬達的 RPM監測馬達的電流(仍然用于檢測馬達停轉 時的過電流);液壓系統在閥控制功能(兩個方向上的比例激勵)及線壓力方面更 簡單。每個處理器都擁有用于存儲引導/應用代碼的ROMx域以及面向主處理器的暫存 RAM 個1KB的郵箱系
16、統被劃分成4個部分負責處理器間的通信。這使得主處 理器可以給其它處理器“留下信息”,或重新獲取決策所需的信息。該郵箱需要一個仲裁器。每個處理器在試圖讀寫郵箱RAM前都必須首先與仲裁器協商。由于整個配置是從頭開始構建的,因此需要制訂一個最基本的通信協 議。最高優先級將保證沒有其它的連接“掛起”互連總線。以下是郵箱的構建 以及這些值的地址(表1)。傳統方法 所有基于FPGA勺SoC在加快上市速度、降低原材料成本以及縮短測試 /調試時 間方面都具有設計優勢。由于它是一款可重新配置的單芯片方案,因此可同時 實施多個設計路線。此外,在設計FPGA勺過程中就可進行原理圖繪制和 PCB設計。也可在進行其它 處理的同時為每個處理器編制軟件流程圖甚至具體實現軟件。可利用FPGA完成板級或系統級仿真,而不必仿真多處理器環境。可以輕松地將許多功能集成到 FPGA內,然后可對設計及任何附加的軟件進行重 新編譯。在采用分立微處理器的傳統方法中,無法利用獨立的處理器實現附加 功能將迫使設計工程師重新設計、并加裝一塊新的電路板。這將造成時間和金 錢的浪費并有可能對產品的市場占有率帶來負面影響。表2對比了基于Cyclone III FPGA 及Nios II 處理器的SoC與基于4個獨立處 理器的傳統方法的成本和優勢。(未列出專用傳統處理器。
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 創業公司股權轉讓合同
- 個人轉租租房合同協議
- 住建委房屋租賃合同樣本
- 短期臨時運輸合作協議2025
- Brand KPIs for pet supply online shop PetSmart in the United States-外文版培訓課件(2025.2)
- 2025年度行政訴訟法知識競賽題庫及答案(共150題)
- 2025年度個人消費貸款擔保合同樣本
- 2025年度采購服務的合同
- 家居裝修裝飾工程合同管理
- 中藥材購銷合同范本2025年
- 2025年春季學期形勢與政策第二講-中國經濟行穩致遠講稿
- GA 1517-2018金銀珠寶營業場所安全防范要求
- C語言期末考試試題南昌航空大學
- 取消訂單協議模板(5篇)
- 東風天錦5180勾臂式垃圾車的改裝設計
- 浦發銀行個人信用報告異議申請表
- 施工進度計劃網絡圖-練習題知識講解
- 防孤島測試報告
- 按摩常用英語
- midas NFX使用指南(八)
- 成都高新區小學數學五年級下冊半期考試數學試卷
評論
0/150
提交評論