新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于ARM+FPGA的運動控制器設計與實現(xiàn)

基于ARM+FPGA的運動控制器設計與實現(xiàn)

作者: 時間:2013-01-04 來源:網(wǎng)絡 收藏

3.1 內(nèi)部關鍵功能模塊設計

   不擅長對數(shù)據(jù)進行運算處理,但本系統(tǒng)對每個軸的控制都要進行相應的運算,因此在每個軸的控制模塊設計中盡量不涉及復雜的算法實現(xiàn),算法部分留給 進行處理。原則上 僅僅接收經(jīng) 進行處理過的數(shù)據(jù),而后按照 主控單元的處理結果進行處理。

  單軸控制模塊框圖如圖3 所示。在每個位置管理單元中都配置了兩個計數(shù)器:邏輯位置計數(shù)器和實際位置計數(shù)器。其中邏輯位置計數(shù)器的輸入端接到脈沖發(fā)生器的輸出端,其功能是計量從脈沖發(fā)生器實際發(fā)出的脈沖數(shù)量。實位計數(shù)器的輸入端接到編碼器的輸出端,其功能是計量從編碼器發(fā)出的脈沖個數(shù)。邏輯位置寄存器和實際位置寄存器實際上構成一個閉環(huán)系統(tǒng),前者為閉環(huán)系統(tǒng)的輸入,后者為閉環(huán)系統(tǒng)的輸出。當兩者的誤差范圍不超過某一個限度時,在FPGA中對實時的脈沖發(fā)送速率進行調(diào)節(jié);當兩者的誤差超過某一個設定的范圍時,F(xiàn)PGA 向ARM 發(fā)送一個中斷請求。當某個軸接收到減速信號SD 或者極限到位信號EL 時,在FPGA 內(nèi)部經(jīng)過同樣一個中斷發(fā)生器模塊向ARM 發(fā)送一個中斷。ARM 接收到中斷信號后,開啟運動控制進程,對PID 控制參數(shù)進行整定,計算控制量。

基于ARM+FPGA的運動控制器設計與實現(xiàn)

圖3 單軸控制模塊設計

  3.2 驅(qū)動程序接口設計

  在系統(tǒng)設計中,兩片F(xiàn)PGA 作為ARM 的外設,掛在ARM 的外設地址空間。當ARM 要訪問FPGA時,首先要在ARM 中運行包含F(xiàn)PGA 所在地址空間地址的指令,而后ARM 的片選線選中FPGA,F(xiàn)PGA檢測到自己被選中,從而開始檢測地址總線上傳來的ARM 指令所包含的地址數(shù)據(jù)。根據(jù)從ARM 地址線傳來的地址總線上的數(shù)據(jù),F(xiàn)PGA 讀取從ARM 數(shù)據(jù)總線上傳來的數(shù)據(jù)總線上的數(shù)據(jù),而后開始進行相應的動作,從而完成一次控制任務。寄存器是本運動控制系統(tǒng)的基本組成部分之一,ARM 對FPGA 的控制就是通過配置在FPGA 內(nèi)部的寄存器來實現(xiàn)的。完成配置的FPGA 整體結構如圖4 所示。

基于ARM+FPGA的運動控制器設計與實現(xiàn)

圖4 FPGA 內(nèi)部結構圖

  4 控制算法設計與仿真

  4.1 單神經(jīng)元自適應PID 控制器設計

  單神經(jīng)元自適應PID 控制器的結構如圖5 所示。

基于ARM+FPGA的運動控制器設計與實現(xiàn)

圖5 單神經(jīng)元自適應PID 控制器

  圖5 中,神經(jīng)元的3 個狀態(tài)變量分別為:

pid控制器相關文章:pid控制器原理




關鍵詞: ARM FPGA 運動控制器

評論


相關推薦

技術專區(qū)

關閉