基于FPGA的智能控制器設計及測試方法研究
摘要:通過模糊自整定PID控制器的設計,本文提出了一種基于VHDL描述、DSP Builder和Modelsim混合仿真、FPGA實現(xiàn)的智能控制器設計及測試新方法。首先,通過MATLAB仿真,得出智能控制器的結(jié)構(gòu)和參數(shù)。然后,基于VHDL進行智能控制器的數(shù)字化實現(xiàn)及其開環(huán)測試。在此基礎上,通過分析一般智能控制器的測試特點,采用DSP Builder構(gòu)建閉環(huán)測試系統(tǒng),Modelsim運行DSP Builder生成文件來驗證QuartusII中所做VHDL設計的測試方法。實驗表明,該測試方法能有效模擬控制器的激勵輸入信號,適用于需閉環(huán)測試檢驗控制品質(zhì)的智能控制器設計。
關鍵詞:VHDL; FPGA; 智能控制器; 閉環(huán)測試; DSP Builder
1 引 言
隨著市場需求的增長,超大規(guī)模集成電路的集成度和工藝水平不斷提高,在一個芯片上完成系統(tǒng)級的設計已成為可能。FPGA固有的并行運算處理能力,使得它能夠提供各種數(shù)字化所需要的大量復雜運算,適合于設計一些對處理速度和實時性要求較高的智能控制器。近幾年,基于VHDL描述,F(xiàn)PGA實現(xiàn)的控制器設計研究比較活躍,如Torralba等人完成了4輸入、12個隸屬度、64條規(guī)則的模糊邏輯控制器的FPGA實現(xiàn)[1],Cirstea等人基于FPGA設計模糊控制器,成功的用于變速器的控制[2]。另外,由于FPGA設計的靈活性和通用性,使得基于FPGA的控制器開發(fā)效率高,成本低,上市時間短。
由于FPGA在智能控制器方面的大量使用,設計后的測試便成了設計者在開發(fā)過程中必須重點考慮的問題,同時,一種好的測試方法不僅能及早發(fā)現(xiàn)設計中存在的問題,而且能提高設計的可靠性。目前基于VHDL描述的智能控制器測試一般是通過開環(huán)時序仿真來驗證其邏輯設計的正確性,而對于一些輸入激勵信號不固定或比較多的智能控制器來說,開環(huán)時序仿真并不能確切模擬控制器的激勵輸入信號。由此,本文在開環(huán)時序仿真的基礎上提出一種基于QuartusII、DSP Builder和Modelsim的閉環(huán)時序仿真測試方法,并借助于某一特定智能控制器的設計對該閉環(huán)測試方法進行了較為深入的研究。
2 FPGA設計與測試平臺
研究采用QuartusII4.0、 DSP Builder3.0以及Modelsim SE6.0作為FPGA的設計及測試平臺。
QuartusII4.0是Altera公司的第四代可編程邏輯器件集成開發(fā)環(huán)境,提供從設計輸入、設計編譯、
功能仿真、設計處理、時序仿真到器件編程的全部功能。同時,它可以產(chǎn)生并識別EDIF網(wǎng)表文件、VHDL網(wǎng)表文件和Verilog HDL網(wǎng)表文件,并且為其它EDA工具提供了方便的接口??梢栽谏厦孀詣舆\行其它EDA工具,包括Synplicity的Synplify/Synplify Pro、Mentor Graphics子公司Exemplar Logic 的LeonardoSpectrum以及Synopsys的FPGA CompilerII等。這些綜合軟件能以很高的效率將VHDL/Verilog設計軟件轉(zhuǎn)換為針對選定器件的標準網(wǎng)表文件。此外,QuartusII4.0里還集成了一個SOPC Builder開發(fā)工具,支持SOPC開發(fā)[3]。
DSP Builder以Matlab/Simulink的Blockset形式出現(xiàn),可以在Simulink中進行圖形化設計和仿真,同時通過Signal Compiler可以將Matlab/Simulink的設計文件(.mdl)轉(zhuǎn)換成相應的VHDL文件(.vhd),以及用于控制綜合與編譯的TCL腳本[4]。
Mentor Graphics公司的Modelsim是業(yè)界中比較好的仿真工具,其仿真功能強大,支持模擬波形顯示,且圖形化界面友好,具有結(jié)構(gòu)、信號、波形、進程和數(shù)據(jù)流等窗口。
通過綜合使用上述三種平臺,可以很好的規(guī)劃設計流程,充分利用各個工具的優(yōu)點,提高開發(fā)效率,所得的測試結(jié)果也更加可靠。
3 智能控制器的VHDL設計及測試特點
以模糊自整定PID控制器為例,其位置式控制算法為:
ui = Kp ei+Ki T∑ei+Kd/T(ei-ei-1)+u0 3.1
其中:Kp = kp+tp
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)pid控制器相關文章:pid控制器原理
評論