基于fpga的無刷直流電機(jī)舵機(jī)控制器設(shè)計(jì)
楊運(yùn),廖勇,李凡
(重慶大學(xué)輸變電裝備及系統(tǒng)安全與新技術(shù)國家重點(diǎn)實(shí)驗(yàn)室,重慶400030)
摘要:針對無刷直流電機(jī)的運(yùn)行特點(diǎn),建立了以ⅱ,ga芯片為核心的相互獨(dú)立的四軸無刷直流電機(jī)舵機(jī)伺服控制系統(tǒng)。利用vhdl語言設(shè)計(jì)了各功能硬件模塊和mos軟核處理器,并用c語言編程在軟核中實(shí)現(xiàn)了針對無刷直流電機(jī)的帶前饋的電流、速度和位置三閉環(huán)軟件控制算法。整個(gè)控制系統(tǒng)體
積小、可靠性高、靈活性強(qiáng),實(shí)現(xiàn)了全數(shù)字控制。通過實(shí)驗(yàn)驗(yàn)證了基于fpga芯片的無刷直流電機(jī)舵機(jī)全數(shù)字化控制器的先進(jìn)性。
關(guān)鍵詞:fi,ga;無刷直流電機(jī);伺服系統(tǒng);前饋
中圈分類號(hào):tm36 +1 文獻(xiàn)標(biāo)志碼:a 文章編號(hào):1001-6848(2010)03-0048-04
0引 言
舵機(jī)伺服系統(tǒng)的控制器目前主要采用模擬控制器和基于單片機(jī)或dsp的數(shù)字控制器。模擬控制器體積和重量大,易受干擾,難于調(diào)試,難以控制無刷直流電機(jī),且其不易于與上位機(jī)構(gòu)成控制系統(tǒng);基于單片機(jī)或dsp的數(shù)字控制器,其體積也比較大,由于控制程序既要進(jìn)行邏輯處理又要進(jìn)行控制算法處理,因此控制周期較長,使用一套控制器往往難以控制多臺(tái)電機(jī),另外,其也存在外部硬件設(shè)計(jì)不靈活、可靠性不高等缺點(diǎn)。
sopc技術(shù)采用軟硬件相結(jié)合的方式,目標(biāo)是將盡可能大而完整的電子系統(tǒng)在一塊fpga中實(shí)現(xiàn),使得所設(shè)計(jì)的電路在規(guī)模、可靠性、體積、功能、性能指標(biāo)、上市周期、開發(fā)成本、產(chǎn)品維護(hù)及其硬件升級等多方面實(shí)現(xiàn)****化。本文采用altera公司的芯片為控制核心,利用sopc思想,采用硬件實(shí)現(xiàn)邏輯處理,軟核處理器實(shí)現(xiàn)算法控制四臺(tái)相互獨(dú)立的無刷直流舵機(jī),所設(shè)計(jì)的控制系統(tǒng)體積小、重量輕、可靠性高以及控制速度快,井通過實(shí)驗(yàn)驗(yàn)證了相關(guān)性能指標(biāo)。
1無刷直流電機(jī)的控制策略
在傳統(tǒng)的電機(jī)伺服控制三環(huán)系統(tǒng)中,由電壓(或上位機(jī)通過通信方式)給出位置給定與位置反饋信號(hào)o作差經(jīng)過位置pid調(diào)節(jié)得到速度給定vg,與測得的速度反饋v作差經(jīng)過速度pid調(diào)節(jié)得到電流給定t,t與此時(shí)刻通電相的相反饋電流作差經(jīng)過電流pid調(diào)節(jié)得到電壓給定u。用此ug輸出調(diào)節(jié)占空比,從而達(dá)到電機(jī)的伺服控制[4,5]。但是此方法中的占空比調(diào)節(jié)需要三環(huán)調(diào)節(jié)完后才起作用,動(dòng)態(tài)響應(yīng)速度較慢。本設(shè)計(jì)在傳統(tǒng)的方法中加上前饋,即由速度給定經(jīng)前饋調(diào)節(jié)得到反電勢e,再與u相加得到輸出,如圖1所示。前饋可顯著提高系統(tǒng)的動(dòng)態(tài)響應(yīng)速度。
2系統(tǒng)硬件設(shè)計(jì)
為了盡量減小系統(tǒng)體積和成本,主控制芯片fpga采用altera公司的cyclone系列器件。電流反饋由采樣電阻和ir2175芯片組成。位置檢測由電位器實(shí)現(xiàn),信號(hào)經(jīng)rc濾波再由ad7863將模擬信號(hào)轉(zhuǎn)換成數(shù)字信號(hào),構(gòu)成位置反饋。為了減霍爾信號(hào)中的干擾,將霍爾信號(hào)經(jīng)濾波和施密特觸發(fā)器整形后輸入cpu,作為速度反饋和換相信號(hào)。整個(gè)硬件還包括數(shù)字通信電路rs232(422),ir2101驅(qū)動(dòng),mosfet全橋電路,程序存儲(chǔ)器epcs4,參數(shù)存儲(chǔ)器eeprom等。如圖2所示。
3 fpga的系統(tǒng)設(shè)計(jì)
用fpga進(jìn)行電機(jī)控制,可以采用純硬件電路搭建控制器進(jìn)行控制或搭建片上處理器采用純軟件方式控制。采用純硬件電路可以實(shí)現(xiàn)并行控制,控制速度快,可靠性高,但是這樣占用系統(tǒng)資源太大,普通fpga的資源難以滿足控制多臺(tái)電機(jī),且難以實(shí)現(xiàn)復(fù)雜算法。采用純軟件方式節(jié)約硬件資源卻難以發(fā)揮fpga的并行處理能力,控制速度慢。本系統(tǒng)采用硬件功能模塊與構(gòu)建軟核實(shí)現(xiàn)軟硬件相結(jié)舍的方式,以軟核為控制核心,硬件模塊獨(dú)立工作,當(dāng)軟核需要相應(yīng)值時(shí)才去讀取或者輸出相應(yīng)值,這樣既使用了較少的邏輯門又實(shí)現(xiàn)了較快的控制速度,硬件模塊采用vhdl和verilog |