基于FPGA的可重構嵌入式運動控制卡設計與實現
引言
本文引用地址:http://www.j9360.com/article/128892.htm運動控制系統廣泛應用于數控機床、機器人、自動生產線等各類工業裝備的控制過程。隨著現代制造業走向高速化、柔性化,對于運動控制系統不但要求具備高性能的控制能力,而且需要具備一定的重配置能力,以適應控制對象的變化。
本文針對上述需求,提出了一種基于FPGA技術的可重構嵌入式運動控制卡的設計方案。該方案采用ARM Cortex-M3控制器和Xilinx Spartan-3A器件為核心,即可實現多個電機軸獨立運行,也可以實現多軸聯動控制。作為與以往基于軟件實現的運動控制系統不同,通過在系統引入FPGA,不但能夠輔助CPU實現各種控制功能,減少CPU的運算負擔,而且能夠在用戶現場實現硬件邏輯的重構,實現運動控制系統的靈活配置、升級。
運動控制卡結構
圖1是本文設計的運動控制卡總體結構示意。該運動控制卡以基于ARM Cortex-M3內核的STM32微控制器為CPU,實現用戶命令的解釋、運動軌跡規劃及PLC程序執行等功能。由于運動控制涉及大規模數據處理,因此擴展了512K x 16位(1M字節)的高速SRAM作為擴展內存。運動控制卡與上位機的通訊通過雙端口RAM實現,上位機和板上CPU可通過兩個獨立的操作接口對雙端口RAM進行異步讀寫操作,具有極高的通訊效率。同時,雙端口RAM提供了忙信號、信號量、郵箱等通訊機制,保證訪問的可靠性。
在運動控制卡中,FPGA集成了電機運動軌跡的精插補、參考點位置捕捉、編碼器信號解碼、I/O擴展、總線接口等自主設計的IP核,實現運動控制所需的各項功能。CPU通過其16位并行總線與FPGA進行通訊,可以隨機訪問FPGA中各IP核的配置及狀態寄存器。FPGA可通過配置芯片在上電時自動配置,也可以通過CPU進行配置。
fpga相關文章:fpga是什么
評論