<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > EDA/PCB > 設計應用 > 基于FPGA的數字積分法插補控制器設計與實現(xiàn)

          基于FPGA的數字積分法插補控制器設計與實現(xiàn)

          作者: 時間:2012-04-05 來源:網絡 收藏

          摘要:為了提高伺服電機的步進精度,簡化控制器結構,采用器件并運用Verilog HDL語言設計出的,不僅采用法實現(xiàn)直線插補控制和圓弧插補控制,提高了插補速度和插補精度,而且運用多軸聯(lián)動技術,實現(xiàn)輸出脈沖的均勻分配。它可接收外部處理器指令,并發(fā)出所需的脈沖到伺服電機的驅動中,從而控制伺服電機的運轉,其結果證明了該控制器的正確性。這種結構的控制器簡化了一般控制器結構,具有良好的移植性能和一定的實用價值。
          關鍵詞:運動控制;;

          0 引言
          數控系統(tǒng)的核心技術是運動控制技術,隨著機電一體化的深入發(fā)展,運動控制技術已經成為推動機電一體化進程的重要環(huán)節(jié),是推動新的產業(yè)革命的關鍵技術碼。
          現(xiàn)代高速數控技術對運動控制器的速度和精度要求日益提高,與運用軟件實現(xiàn)的控制器相比較,基于設計的具有控制方便、插補速度快、精度高、通用性好、可移植性的特點,并擁有可運用硬件描述語言實現(xiàn)軟硬結合等多種優(yōu)點。為了提高伺服電機的精確度,本文設計了一個基于數字法并采用多軸聯(lián)動技術的插補控制器,該控制器可實現(xiàn)三軸的直線插補和兩軸的圓弧插補。

          1 插補控制器的總體設計
          該控制器的核心部分是DDA插補模塊,整個插補模塊可分成直線插補模塊和圓弧插補模塊兩部分。每個插補模塊內都由數據緩存器、插補積分器和位置計數器3個部分組成。下面分別介紹各個模塊的設計及仿真。

          本文引用地址:http://www.ex-cimer.com/article/190545.htm

          c.JPG


          插補控制器具備三軸直線插補及兩軸圓弧插補的能力,2種插補均采用數字積分法實現(xiàn)。數字積分法(DDA)具有邏輯能力強、可實現(xiàn)多軸聯(lián)動控制,且輸出脈沖均勻的特點。如圖1所示,插補控制器接收到外部處理器的控制信號和數據,經過譯碼及配置寄存器模塊的譯碼和配置后,根據需要選擇進行直線插補或圓弧插補,輸出指脈沖和方向信號。脈沖用于通過伺服電機驅動控制伺服電機的轉動,方向信號則控制伺服電機的轉動方向。

          2 基于FPGA的模塊設計
          該插補控制器采用Altera公司的CycloneⅢ-EP3C16Q240C8,運用Verilog HDL完成程序設計,在QuartusⅡ平臺進行編譯、綜合及下載,運用Modeisim進行程序的仿真和調試,最終完成整個控制器的設計(如圖1所示)。
          2.1 譯碼及配置寄存器模塊
          譯碼及配置寄存器模塊主要負責譯碼和完成各寄存器間數據的分配,并且選擇需要進行的插補方式。以下為各個輸入端口的定義和工作方式:cs為片選信號。
          低電平有效,外部處理器選中插補控制器,使其進入待命狀態(tài);rest為復位信號。低電平有效,整個控制器處于復位狀態(tài),控制器內部各個模塊做初始化操作;wr為寫信號,低電平有效,向插補控制器寫入需要完成插補的初始點坐標和終點坐標的數據;start為插補開始信號,高電平有效,插補控制器開始進行插補;A3~A0為4位地址信號,通過地址指針的形式,將處理器數據分配給插補模塊各軸的數據緩存器。其中,高位A3具有選擇插補方式的功能;A3位為“0”時,插補控制器做三軸直線插補;A3位為“1”時,做兩軸圓弧插補;data為16位數據總線端口。
          2.2 DDA插補模塊
          DDA插補模塊有直線插補和圓弧插補兩部分,兩種插補方式在一次插補過程中,只能有一種處于工作狀態(tài)。直線插補能夠實現(xiàn)3個軸的脈沖輸出,完成二維或三維的直線軌跡,而圓弧插補是實現(xiàn)兩軸的脈沖輸出,實現(xiàn)二維的圓弧軌跡。
          2.2.1 直線插補模塊
          當選中直線插補模塊時,該模塊進入工作狀態(tài)。直線插補模塊由數據緩存器、插補積分器和位置計數器3個部分組成。下面分別介紹各部分的設計及其功能。
          (1)數據緩存器
          數據緩存器共由6個16位寄存器構成,它們分別存儲x,y,z三個軸的初始點坐標值及終點坐標值。數據緩存模塊將直線插補的數據進行自動加載,以便于直線插補積分器調用模塊內的數據。進行緩存的目的是為了保持數據的流暢性,確保直線插補不因為數據的轉變而出現(xiàn)中斷的情況。這樣大大地提高直線插補的效率,同時減少因為時序問題所帶來的誤差。當積分器加載緩存器中的數據完畢以后,積分器接收到start信號,積分器開始進行數字積分直線插補。當數據緩存器接收到rest信號時,緩存器中所有數據全部做復位操作。

          fpga相關文章:fpga是什么


          伺服電機相關文章:伺服電機工作原理



          上一頁 1 2 3 4 下一頁

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();