基于DSP的磁流變阻尼器的控制方法
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要: 以美國(guó)德州儀器公司推出的十六位定點(diǎn)通用數(shù)字信號(hào)處理芯片DSP為核心開(kāi)發(fā)出精確可控的電流控制器,電流可在0~1.5A范圍內(nèi)調(diào)節(jié),輸出電流精度高,線性度好,控制效果顯著。
關(guān)鍵詞:DSP; 電流控制器; 磁流變阻尼器; PWM控制
中圖分類號(hào):TP2 文獻(xiàn)標(biāo)識(shí)碼:B 文章編號(hào):
1 引言
磁流變阻尼器是一種在磁場(chǎng)作用下阻尼可控的器件,在航空、汽車等領(lǐng)域具有廣泛應(yīng)用前景。與傳統(tǒng)汽車懸架系統(tǒng)相比,裝有磁流變阻尼器的半主動(dòng)懸架系統(tǒng)可以根據(jù)路面狀況和車輛運(yùn)行狀態(tài)在計(jì)算機(jī)的控制下自動(dòng)調(diào)節(jié)阻尼器的阻尼力,大大提高汽車的舒適性和行車安全性[1,2]。磁流變阻尼器的工作原理是改變勵(lì)磁線圈中的電流從而獲得不同強(qiáng)度的磁場(chǎng),使工作腔中的磁流變液的流動(dòng)特性發(fā)生變化,從而改變阻尼力的大小。因此,控制器只要能實(shí)時(shí)精確調(diào)節(jié)磁流變阻尼器的驅(qū)動(dòng)電流,就能達(dá)到控制磁流變阻尼器的目的。經(jīng)文獻(xiàn)檢索,國(guó)內(nèi)外未見(jiàn)磁流變阻尼器的電流控制器設(shè)計(jì)的報(bào)道。根據(jù)美國(guó)LOAD公司的網(wǎng)站最新發(fā)布的信息,LOAD公司已經(jīng)研制出了適用于LOAD公司生產(chǎn)的Rheonetic系列磁流變器件的電流控制器RD-3002。它可以工作在手動(dòng)調(diào)節(jié)和外加電壓控制調(diào)節(jié)兩種方式下,能與計(jì)算機(jī)或PLC構(gòu)成閉環(huán)控制系統(tǒng)。RD-3002需要外加12V,2A的電源,外加控制電壓:0~5V,輸出電流:0~2A。但是他們沒(méi)有公布設(shè)計(jì)的原理和實(shí)現(xiàn)的方法。
美國(guó)德州儀器公司(Texas Instrument)推出的定點(diǎn)十六位通用數(shù)字信號(hào)處理芯片TMS320F240,采用改進(jìn)哈佛結(jié)構(gòu),程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器的總線分開(kāi),可以最大限度提高處理能力。為了適合工業(yè)控制要求,F(xiàn)240集成了許多外設(shè),包括3個(gè)16位通用定時(shí)器,12路帶死區(qū)控制的PWM輸出、雙通道10位A/D輸入,串行通信接口以及Watchdog、PLL電路。因此,我們充分利用F240的硬件資源,根據(jù)PWM信號(hào)控制開(kāi)關(guān)器件調(diào)節(jié)電流的原理,順利地設(shè)計(jì)出磁流變阻尼器的的控制器,并且F240的強(qiáng)大處理能力為今后系統(tǒng)擴(kuò)展留有余地。下面將詳細(xì)介紹基于DSP的磁流變阻尼器的控制器的設(shè)計(jì)原理和控制方法。
RS為采樣電阻,KI0表示輸出電流的采樣,K為增益系數(shù), KI0輸入到DSP集成的A/D口,DSP 對(duì)采樣信號(hào)進(jìn)行運(yùn)算后,根據(jù)相應(yīng)控制策略輸出一定占空比的PWM信號(hào),控制主回路的輸出電流大小。
控制器的軟件采用F240匯編語(yǔ)言設(shè)計(jì),框圖如圖3所示。系統(tǒng)工作時(shí)主程序可以處理其它事務(wù),當(dāng)定時(shí)器2發(fā)生周期中斷時(shí),觸發(fā)A/D采樣,然后采樣值與系統(tǒng)給定值相減,誤差輸入PID控制模塊,輸出PWM信號(hào)的占空比D,D送給PWM信號(hào)發(fā)生模塊,產(chǎn)生的PWM信號(hào)用于控制驅(qū)動(dòng)電流的輸出。
3 A/D采樣
F240內(nèi)部集成了兩個(gè)帶采樣-保持電路的10位ADC模塊。每個(gè)模塊有8個(gè)模擬輸入通道,它們通過(guò)一個(gè)8選1模擬多路轉(zhuǎn)換器提供給ADC。每個(gè)ADC單元的最大轉(zhuǎn)換事件為6.6μs[3]。ADC模塊的參考電壓必須由外部電源提供,上級(jí)參考電壓和下級(jí)參考電壓可以設(shè)置為小于或等于5Vdc的任意值,分別接到VREFHI和VREFLO引腳。VCCA和VSSA引腳必須分別接到5Vdc和模擬地。ADC模塊框圖如圖4所示。
本系統(tǒng)采用ADC1模塊的1通道輸入采樣信號(hào),采用定時(shí)器2周期中斷觸發(fā)方式,操作步驟如下:
1) 設(shè)置定時(shí)器控制器GPTCON的位9,10為0,1,將定時(shí)器2的周期中斷作為ADC的內(nèi)部啟動(dòng)信號(hào)。
2) 設(shè)置ADC控制寄存器1(ADCCTRL1)。
位12 清0,禁止ADC2(沒(méi)有用到ADC2);
位11置1, ADC1被使能;
位10清0, 非連續(xù)轉(zhuǎn)換模式;
位9 置1,當(dāng)AD轉(zhuǎn)換完成后產(chǎn)生一個(gè)中斷;
位8 置1,ADC中斷標(biāo)志位,當(dāng)AD轉(zhuǎn)換完成后該位被置1;
位6-4 ADC2通道選擇;
位3-1置為 000 ,ADC1通道選擇,000為通道1;
位0 置1, AD開(kāi)始轉(zhuǎn)換;
3) 設(shè)置ADC控制寄存器2(ADCTRL2)。
位10 置1,ADC轉(zhuǎn)換與一個(gè)事件管理器信號(hào)同步(GPT2的周期中斷信號(hào));
位9 清0,屏蔽外部信號(hào)觸發(fā);
位2-0置為 101, 輸入時(shí)鐘預(yù)定標(biāo)為16。單個(gè)ADC模塊在一個(gè)ADC預(yù)定標(biāo)時(shí)鐘周期內(nèi)完成輸入的采樣,在5個(gè) ADC預(yù)定標(biāo)時(shí)鐘周期內(nèi)完成轉(zhuǎn)換,所以一次采樣/轉(zhuǎn)換需要6個(gè)預(yù)定標(biāo)時(shí)鐘周期內(nèi)完成。ADC模塊的結(jié)構(gòu)要求采樣/轉(zhuǎn)換時(shí)間要等于或大于6μs才能保證轉(zhuǎn)換正確。預(yù)定標(biāo)值必須滿足:SYSCLK時(shí)鐘周期×預(yù)定標(biāo)值×6≥6μs。
在系統(tǒng)中設(shè)置SYSCLK時(shí)鐘周期為0.1μs,0.1μs×16×6=9.6μs≥6μs。
4) 讀ADC1的數(shù)字結(jié)果寄存器。
ADC的數(shù)字結(jié)果寄存器是一個(gè)2深度的FIFO的只讀寄存器,位15-6是實(shí)際的10位轉(zhuǎn)換值。位5-0保留。
4 PWM波形的生成
F240具有12個(gè)器件引腳用于PWM信號(hào)輸出,具有以下特點(diǎn):
•16位的最大PWM分辨率;
•PWM載波頻率可以實(shí)時(shí)改變(雙緩沖的周期寄存器);
•PWM脈寬可以實(shí)時(shí)改變(雙緩沖的比較寄存器);
•功率驅(qū)動(dòng)保護(hù)中斷,可以監(jiān)控程序提供的驅(qū)動(dòng)異常,如過(guò)電壓、過(guò)電流和溫升過(guò)高;
•可以編程產(chǎn)生對(duì)稱、非對(duì)稱和空間向量的PWM波形;
•比較和周期寄存器自動(dòng)重載,使CPU開(kāi)銷最??;
•全比較單元的三對(duì)引腳還可以輸出帶死區(qū)的PWM波形,死區(qū)寬度在0~2048個(gè)CPU時(shí)鐘周期內(nèi)可編程。
要產(chǎn)生一個(gè)PWM信號(hào),需要一個(gè)合適的定時(shí)器來(lái)重復(fù)產(chǎn)生一個(gè)與PWM周期相同的計(jì)數(shù)周期,一個(gè)比較寄存器保持調(diào)制值。比較寄存器的值不斷與定時(shí)器的計(jì)數(shù)值相比較,當(dāng)兩個(gè)值匹配時(shí),在相應(yīng)的輸出上就會(huì)產(chǎn)生一個(gè)轉(zhuǎn)換(從低到高或從高到低)。當(dāng)兩個(gè)值之間的第二次匹配產(chǎn)生或一個(gè)定時(shí)器周期結(jié)束時(shí),相應(yīng)的輸出上又會(huì)產(chǎn)生一次轉(zhuǎn)換(從高到低或從低到高)。通過(guò)這種方法所產(chǎn)生的輸出脈沖的開(kāi)關(guān)時(shí)間就會(huì)與比較寄存器的值成比例。在每定時(shí)器周期中,這個(gè)過(guò)程都會(huì)出現(xiàn),通過(guò)改變比較寄存器的值,就能產(chǎn)生一個(gè)PWM信號(hào),見(jiàn)圖5。
本系統(tǒng)用全比較單元PWM1/CMP1引腳產(chǎn)生100kHz的對(duì)稱PWM波形,具體步驟如下。
1) 設(shè)置和載入全比較動(dòng)作控制寄存器ACTR:SPLK #0000011001100101b, ACTR
位1-0 置為10使PWM1 高電平有效,在比較寄存器的值與定時(shí)器的計(jì)數(shù)值相匹配時(shí),PWM1輸出產(chǎn)生一個(gè)從低到高轉(zhuǎn)換,第二次匹配又產(chǎn)生從高到低的轉(zhuǎn)換。
2) 初始化全比較單元1比較寄存器CMPR1:SPLK #0000h, CMPR1。
3) 設(shè)置和載入比較控制寄存器:SPLK #0100101111010111B, COMCON 。
位15清0,禁止全比較操作;
位14-13,置為10 立即重載比較寄存器CMPR1的值;
位12清0,禁止空間向量輸出;
位11-10,置為10立即重載動(dòng)作控制寄存器ACTR的值;
位9置1,PWM輸出使能;
位0置1,PWM1/CMP1引腳輸出模式為PWM模式。
4)設(shè)置和載入比較控制寄存器:SPLK #1100101111010111B, COMCON。
位15置1,全比較操作使能。
5)設(shè)置和載入定時(shí)器 GP1的周期寄存器T1PR:SPLK #100, T1PR。
連續(xù)加/減計(jì)數(shù)模式下,當(dāng)CPU時(shí)鐘頻率=20MHz時(shí),PWM的載波頻率= 20MHz/(100*2)。
6)設(shè)置和載入比較寄存器CMPR1,確定PWM波形的脈寬:SPLK #50, CMPR1。
PWM波形的占空比=50/100*100%=50%。
7)設(shè)置和載入GP1的計(jì)數(shù)寄存器T1CNT:SPLK #0FFFEH,T1CNT。
初始化GP1的計(jì)數(shù)寄存器值。
8)設(shè)置和載入定時(shí)器 GP1的控制寄存器T1CON,啟動(dòng)操作:
SPLK #1010100001000000b, T1CON;
位13-11置為101, GP1處于連續(xù)加/減計(jì)數(shù)模式;
位10-8置為000,輸入時(shí)鐘預(yù)定標(biāo)GP1時(shí)鐘周期=CPU時(shí)鐘周期;
位6 置1允許GP1操作;
位5-4置為00,時(shí)鐘源使用內(nèi)部時(shí)鐘;
位3-2置為00,GP1計(jì)數(shù)器值為0時(shí)重載;
位1清0,禁止GP1比較操作。
注意:
1) 使用全比較單元產(chǎn)生PWM波形,只能使用定時(shí)器GP1;
2) 為確保所有全比較輸出的起始狀態(tài)正確,COMCON必須被寫入兩次。
5 測(cè)試結(jié)果
電流控制器輸出特性見(jiàn)圖6,從圖中可以看出實(shí)驗(yàn)結(jié)果與理論計(jì)算相吻合,輸出電流與PWM信號(hào)占空比成線形關(guān)系。電流控制器對(duì)磁流變阻尼器的控制效果見(jiàn)圖7,從圖中可以看出,隨著線圈電流強(qiáng)度的增加,示功圖的面積逐漸增大,表明了減振器的阻尼力增大和在一個(gè)循環(huán)中減振器所耗散的功增大,控制效果非常明顯。
6 結(jié)論
本文以美國(guó)德州儀器公司的定點(diǎn)十六位通用數(shù)字信號(hào)處理芯片TMS320F240為核心設(shè)計(jì)了用于磁流變阻尼器的電流控制器,經(jīng)實(shí)驗(yàn)證明
(1) F240具有豐富的外設(shè)資源,極高的性價(jià)比,尤其是它集成了12路PWM輸出和16路10位A/D轉(zhuǎn)換,采用它可以提高系統(tǒng)的集成度和可靠性,縮短研發(fā)周期,為自動(dòng)控制系統(tǒng)開(kāi)發(fā)人員提供了一種新的選擇;
(2) 基于F240的電流控制器可在0~1.5A范圍內(nèi)連續(xù)調(diào)節(jié),響應(yīng)速度快,輸出線性度較好,輸出穩(wěn)定性好(輸出電流變化<0.03A),控制效果顯著。