基于FPGA的磁浮軸承控制系統(tǒng)研究
0 引言
磁浮軸承(Magnetic Bearing)是以磁性力完全非接觸式支持旋轉(zhuǎn)體的軸承,其廣義上的定義是可支持直線運(yùn)動(dòng)物體的軸承及局部有機(jī)械性接觸的軸承。其作用原理是借磁場(chǎng)感應(yīng)產(chǎn)生的磁浮力來抵抗重力場(chǎng)及轉(zhuǎn)軸運(yùn)動(dòng)時(shí)產(chǎn)生的作用力,將轉(zhuǎn)軸懸浮起來,使得轉(zhuǎn)子與軸承不互相接觸。
1 磁軸承控制系統(tǒng)
磁軸承控制系統(tǒng)的研究一直是磁軸承技術(shù)研究的熱點(diǎn)和難點(diǎn),磁軸承控制系統(tǒng)一般包括無接觸的位移傳感器、功率放大器、控制器和電磁激勵(lì)器(即電磁線圈和轉(zhuǎn)軸)四部分。本文研究的立式磁懸浮軸承結(jié)構(gòu)如圖1所示。對(duì)于立式結(jié)構(gòu)的電機(jī)系統(tǒng)來講,軸向軸承主要承載的是轉(zhuǎn)子本身的自重,屬于單方向靜態(tài)載荷,而其動(dòng)態(tài)載荷相對(duì)較小,所以可采用單邊工作方式的圓盤電磁鐵系統(tǒng)。而徑向軸承無靜態(tài)載荷,但需要承擔(dān)雙向的動(dòng)態(tài)載荷,因此,可以在每個(gè)自由度上設(shè)計(jì)兩個(gè)電磁鐵來進(jìn)行差動(dòng)控制,以使其產(chǎn)生正向力和負(fù)向力來滿足動(dòng)態(tài)載荷的雙向變化要求。
由于控制算法往往較為復(fù)雜,在磁軸承的控制器設(shè)計(jì)上,一般都采用數(shù)字控制方法,即建立基于DSP(Digital Signal Processor)的控制平臺(tái)。然而,隨著微電子技術(shù)的發(fā)展,FPGA(Field Programmable Gate Array,即現(xiàn)場(chǎng)可編輯門陣列)以其性能好、規(guī)模大、可重復(fù)編程、開發(fā)投資小等優(yōu)點(diǎn),正逐漸成為各種電子產(chǎn)品不可或缺的重要部件。其高性能的并行性、定制化、靈活性和高性價(jià)比等特性正使得FPGA可編程門陣列器件成為實(shí)現(xiàn)高性能數(shù)字信號(hào)處理和數(shù)字系統(tǒng)控制的首選器件之一。
2 現(xiàn)場(chǎng)可編程門陣列(FPGA)
FPGA (Field Programmable Gate Atray)是現(xiàn)場(chǎng)可編程門陣列的英文縮寫,是可編程專用集成電路(ASIC)的一種(同類的還包括CPLD)。1984年,Xilinx公司首創(chuàng)了現(xiàn)場(chǎng)可編程邏輯陣列(FP-GA)這一創(chuàng)新性技術(shù),并于1985年首次推出了世界上第一塊FPGA芯片。在二十多年的發(fā)展過程中,F(xiàn)PGA的硬件體系結(jié)構(gòu)和軟件開發(fā)工具都在不斷的完善且日趨成熟。從最初的1200個(gè)可用門到90年代時(shí)的幾十萬個(gè)可用門,發(fā)展到目前的數(shù)百萬門至上千萬門的單片F(xiàn)PGA芯片,Xilinx、Ahera等世界頂級(jí)廠商已經(jīng)將FPGA器件的集成度提高到了一個(gè)新的水平。
本文使用的是Spartan-3E Starter Kit Board開發(fā)板,芯片采用Xilinx公司的Spartan-3E系列中的XC3S500E芯片。XC3S500E系統(tǒng)門資源包括1164個(gè)可配置單元(可換算為4656個(gè)片資源)、4個(gè)DCM、360K位塊存儲(chǔ)器、20個(gè)乘法器以及232個(gè)可以使用的IO端口。設(shè)計(jì)時(shí)可以采用MathWorks公司的Matlab和Xilinx公司的System Generator來負(fù)責(zé)系統(tǒng)級(jí)設(shè)計(jì)。
Matlab作為線性系統(tǒng)的一種分析和仿真工具,在工程和計(jì)算科學(xué)上有著廣泛的應(yīng)用。Simulink作為Matlab的一個(gè)工具箱(toolbox),在整個(gè)的數(shù)字信號(hào)處理(Digital Signal Processing,DSP)設(shè)計(jì)中起著舉足輕重的作用。它是一個(gè)交互式的工具,可用于對(duì)復(fù)雜的系統(tǒng)進(jìn)行建模、仿真和分析。System Generator是Xilinx公司的一個(gè)模塊集(blockset),是simulink的一個(gè)插件,其中設(shè)置了Xilinx特有的DSP功能的IP核,也包括了基本DSP函數(shù)和邏輯算符,如FIR ( Finite Impulse Re-sponse)、FFT(Fast Fourier Transform)、存儲(chǔ)器、數(shù)學(xué)函數(shù)、轉(zhuǎn)換器、延時(shí)線等。這些預(yù)先定義好的模塊保證了FPGA實(shí)現(xiàn)時(shí)的位(-bit)和周期(-cycle)的正確性。使用它可以自動(dòng)生成VHDL/Verilog語言、測(cè)試向量以及可以對(duì)ModelSim進(jìn)行仿真的“.do'’文件。為了得到最佳的性能、密度和可預(yù)測(cè)性,System Generator還會(huì)自動(dòng)將特定的設(shè)計(jì)模塊映射成高度優(yōu)化了的IP核模型。XilinxBlockset中的模塊,有的可以直接映射到硬件,有的對(duì)應(yīng)著IP核。它們中每個(gè)都可以根據(jù)設(shè)計(jì)要求更改參數(shù),并支持雙精度和定點(diǎn)的算法。這個(gè)模塊集是一個(gè)可以外部擴(kuò)展的庫,使用的是C++的定點(diǎn)算法,所以,用戶可以創(chuàng)建自己的基于C++類的Simulink庫元件,以在設(shè)計(jì)中被當(dāng)作黑箱(Blackbox)處理。System Generator同Simulink模型工具相結(jié)合,可以參數(shù)化、最優(yōu)化算法。也可以自動(dòng)從行為級(jí)的系統(tǒng)模型轉(zhuǎn)換到FPGA實(shí)現(xiàn),且其間不再需要手工重設(shè),因而大大節(jié)省了開發(fā)時(shí)間并降低了出錯(cuò)概率。通過軟件,用戶可以在DSP函數(shù)的算法、性能、節(jié)能、硅片面積中進(jìn)行選取,以便快速分析出它的運(yùn)算速度和花費(fèi)。
評(píng)論