基于FPGA的電渦流緩速器控制系統(tǒng)
關(guān)鍵詞:電渦流緩速器;FPGA;狀態(tài)機(jī);模糊控制
引言
電渦流緩速器的工作原理基于電磁感應(yīng)理論。作為一種輔助制動(dòng)裝置,其減少了主制動(dòng)裝置的機(jī)械摩擦,既提高了壽命,又提高了車輛行駛的安全性、經(jīng)濟(jì)性和舒適性,越來越受到汽車制造廠家的青睞。但是,由于汽車領(lǐng)域?qū)?shí)時(shí)性要求較高,且模糊控制算法涉及到頻繁的多字節(jié)數(shù)據(jù)的乘除運(yùn)算,而FPGA在實(shí)現(xiàn)算法方面具有巨大的優(yōu)勢(shì),因此本文將基于FPGA進(jìn)行設(shè)計(jì)。另外,本文結(jié)合基于FPGA的32位精簡(jiǎn)指令軟核Nios編程,能很好地解決實(shí)時(shí)性與控制靈活性之間的矛盾。
節(jié)能型電渦流緩速器
目前大部分電渦流緩速器利用蓄電池或自帶發(fā)電機(jī)來產(chǎn)生勵(lì)磁電流,這兩種方法在緩速時(shí)都不能最優(yōu)化地將車輛所具有的動(dòng)能轉(zhuǎn)化為剎車能量。
本系統(tǒng)根據(jù)電渦流緩速器制動(dòng)力矩的大小對(duì)自發(fā)電機(jī)和蓄電池進(jìn)行調(diào)度,電渦流緩速器制動(dòng)力矩公式如下:
這里,lg為氣隙間距; d為鐵心直徑;R1為勵(lì)磁線圈中心點(diǎn)的半徑;Np為磁極對(duì)數(shù); N為勵(lì)磁線圈繞組匝數(shù);I為勵(lì)磁線圈繞組電流;r為轉(zhuǎn)子盤電阻率;mr為轉(zhuǎn)子盤相對(duì)磁導(dǎo)率;w為轉(zhuǎn)子角速度。
當(dāng)車速較大時(shí),自發(fā)電機(jī)在一定電壓下的輸出電流大于I,將一部分電能用于制動(dòng),剩下的電能儲(chǔ)存到蓄電池;當(dāng)車速較慢時(shí),自發(fā)電機(jī)在一定電壓下的輸出電流小于I,則從蓄電池輸出電流到繞組線圈產(chǎn)生勵(lì)磁電流,從而最大限度地利用能源。
基于FPGA的電渦流緩速器控制系統(tǒng)
為了提升系統(tǒng)可靠性和靈活性,本控制器根據(jù)功能需求進(jìn)行模塊化設(shè)計(jì),主要包括ADC0809控制、NIOS處理器、模糊控制器、電源控制、PWM、LCD顯示等模塊,系統(tǒng)結(jié)構(gòu)如圖1所示。
圖1 電渦流緩速器控制系統(tǒng)結(jié)構(gòu)
系統(tǒng)首先由ADC0809控制模塊控制ADC進(jìn)行各種信號(hào),如溫度、電壓等信號(hào)的采集,然后通過Avalon總線把數(shù)據(jù)傳輸?shù)侥:刂破?、電源控制等模塊。電源控制模塊根據(jù)車速會(huì)對(duì)蓄電池和自發(fā)電機(jī)進(jìn)行能量調(diào)度,實(shí)現(xiàn)最大限度的節(jié)能;模糊控制器模塊根據(jù)恒速、恒流等控制策略,計(jì)算出用于控制PWM占空比的參數(shù),實(shí)現(xiàn)勵(lì)磁電流的調(diào)節(jié)。
ADC0809控制模塊
信號(hào)采集是系統(tǒng)實(shí)現(xiàn)閉環(huán)控制的重要環(huán)節(jié),它的好壞關(guān)系到整個(gè)系統(tǒng)的性能。采用FPGA控制ADC的方式能有效降低外界干擾對(duì)采樣造成的影響,提高可靠性。另外,利用FPGA狀態(tài)機(jī)產(chǎn)生的時(shí)序控制ADC時(shí),控制周期短、速度快,能提高整個(gè)系統(tǒng)的實(shí)時(shí)性。
使用狀態(tài)機(jī)控制ADC0809芯片采樣,包括時(shí)序控制和數(shù)據(jù)的讀取。首先,狀態(tài)機(jī)輸出兩路信號(hào)先后控制引腳ale和start,一旦start有效,狀態(tài)信號(hào)EOC即變?yōu)榈碗娖?,表示進(jìn)入轉(zhuǎn)換狀態(tài),狀態(tài)機(jī)通過不斷檢測(cè)ADC0809引腳EOC的電平來判斷轉(zhuǎn)換是否結(jié)束。若EOC為高電平表示轉(zhuǎn)換結(jié)束,狀態(tài)機(jī)輸出信號(hào)使引腳OE由低電平變?yōu)楦唠娖剑詈笞x取轉(zhuǎn)換好的數(shù)據(jù),主要Verilog代碼如下。
always @ ( EOC ,state )
begin case ( state )
st0 :begin ale <= #1 1'b0; start <= #1 1'b0; OE <= #1 1'b0; state <=#1 st1; end
st1 :begin ale <= #1 1'b1; start <= #1 1'b0; OE <= #1 1'b0; state <=#1 st2; end
st2 :begin ale <= #1 1'b0; start <= #1 1'b1; OE <= #1 1'b0; state <=#1 st3; end
st3 :begin ale <= #1 1'b0; start <= #1 1'b0; OE <= #1 1'b0;
state<=(EOC==1'b1)? #1 st3:st4; end
st4 :begin ale <= #1 1'b0; start <= #1 1'b0; OE <= #1 1'b0;
state<=(EOC==1'b0)? #1 st4:st5; end
st5 :begin ale <= #1 1'b0; start <= #1 1'b0; OE <= #1 1'b1; state <=#1 st6; end
st6 :begin ale <= #1 1'b0; start <= #1 1'b0; OE <= #1 1'b1; state <=#1 st0; end
default : begin ale <= #1 1'b0; start <= #1 1'b0; OE <= #1 1'b0; state <=#1 st0; end
endcase end
模糊控制器模塊
電渦流緩速器是一個(gè)非線性系統(tǒng)、強(qiáng)耦合、模型較復(fù)雜的對(duì)象。由于常規(guī)PID控制不具備在線調(diào)整參數(shù)的功能,所以不適于勵(lì)磁電流與車速呈非線性關(guān)系的系統(tǒng)控制。而模糊理論具有很強(qiáng)的非線性建模能力,能完成復(fù)雜系統(tǒng)的非線性映射功能,將模糊推理機(jī)制引入到測(cè)控系統(tǒng)中,實(shí)現(xiàn)對(duì)電渦流緩速器的最佳控制,以滿足實(shí)際的行車情況,控制器原理圖如圖2所示。
圖2 模糊控制器原理圖
從原理圖可以看出,本模糊控制器采用了二維模糊調(diào)節(jié)的方式,以改善系統(tǒng)的動(dòng)態(tài)性能,即模糊控制器的輸入為給定值與測(cè)量值偏差e和偏差變化率芿=ek-ek-1所對(duì)應(yīng)的兩個(gè)模糊控制集,經(jīng)量化因子量化后,得到對(duì)應(yīng)的量化等級(jí),其量化等級(jí)分別表示為{-7、-6、-5、-4、 -3、-2、-1、0、1、2、3、4、5、6、7}??刂茮Q策表是經(jīng)離線模糊控制推理運(yùn)算,并結(jié)合系統(tǒng)的實(shí)際運(yùn)行進(jìn)行調(diào)整、修改得到的,但它僅反映常規(guī)模糊控制的控制規(guī)則,不能保證系統(tǒng)的動(dòng)、靜態(tài)特性在大范圍內(nèi)最優(yōu)。因此,為改善模糊控制器的性能,根據(jù)系統(tǒng)的誤差和誤差變化等信息,對(duì)控制器實(shí)行在線調(diào)整,實(shí)際輸出的控制量為決策表值與比例因子的乘積。比例因子的選取規(guī)則如下:當(dāng)e和芿較大時(shí),系統(tǒng)主要是減少誤差,加快動(dòng)態(tài)過程,應(yīng)取較大值;當(dāng)e和芿較小時(shí),系統(tǒng)接近穩(wěn)定值,應(yīng)取較小值。最后,按此原則并結(jié)合實(shí)際經(jīng)驗(yàn)得到比例因子表。
根據(jù)上面的分析,利用Verilog HDL語言設(shè)計(jì)出aul運(yùn)算模塊和rom存儲(chǔ)模塊,另外由Quartus II軟件的LPM設(shè)計(jì)乘法器lpm_mult0模塊,如圖3所示。aul模塊首先根據(jù)輸入值in_a[7..0]和in_b[7..0]進(jìn)行求差、除法等運(yùn)算得到e和芿的值,并乘上各自的量化因子得到量化等級(jí)E和艵,然后根據(jù)E和艵與控制策略表和比例因子表的對(duì)應(yīng)關(guān)系得到查表地址;rom模塊存儲(chǔ)了控制策略表U和比例因子表GU,根據(jù)aul模塊傳遞過來的地址查找U和GU表,然后將結(jié)果輸出到乘法器模塊,并計(jì)算出PWM的調(diào)節(jié)增量,從而改變PWM的占空比,實(shí)現(xiàn)對(duì)勵(lì)磁電流的調(diào)節(jié)。
圖3 模糊控制器頂層模塊電路原理圖
基于Nios的主控程序
Nios處理器是整個(gè)系統(tǒng)的中樞,是各控制模塊通訊的橋梁。Nios處理器通過Avalon總線將采集進(jìn)來的各種參數(shù),如車速、ABS、電壓等,按需要傳遞到各控制模塊,控制模塊再把相關(guān)的運(yùn)算結(jié)果返回給主控程序,以實(shí)現(xiàn)相關(guān)的控制策略,如圖4所示。
圖4 主控程序流程圖
結(jié)語
本課題選用Cyclone II系列中的EP2C5Q208C8芯片,它具有4608個(gè)邏輯單元,內(nèi)部RAM達(dá)119808位,內(nèi)部乘法器可達(dá)26單元,最大用戶I/O達(dá)143個(gè),這些豐富的資源能夠滿足電渦流緩速器控制器各模塊的設(shè)計(jì)需求,邏輯單元的使用率為65%,RAM使用率為45%。本設(shè)計(jì)方法提高了系統(tǒng)的集成度和可靠性并且降低了功耗,F(xiàn)PGA的可重構(gòu)性大大方便了系統(tǒng)將來的升級(jí),而不需要改變?cè)瓉淼碾娐凡季€?!?/P>
參考文獻(xiàn):
1.劉洋,李長(zhǎng)安等.基于FPGA和模糊控制的模型車運(yùn)動(dòng)學(xué)仿真[J],微計(jì)算機(jī)信息2006年第5-2期
2.孫為民.電渦流緩速器制動(dòng)力矩計(jì)算的新方法[J],現(xiàn)代機(jī)械2005年第4期
3.潘松.EDA技術(shù)與VHDL[M],北京:清華大學(xué)出版社,2005,213-215
4.郭愛琴,周百新.用VHDL設(shè)計(jì)的SRD模糊控制器[J],南京師范大學(xué)學(xué)報(bào)2004年第1期