數(shù)字信號(hào)處理器中D/A功能的實(shí)現(xiàn)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
關(guān)鍵詞:數(shù)字信號(hào)處理器;脈寬調(diào)制;數(shù)模轉(zhuǎn)換
引言
TMS320F2407A是一款高速,高性能,低成本的微處理器,其內(nèi)部集成了眾多數(shù)控系統(tǒng)所需的外擴(kuò)設(shè)備,可以實(shí)現(xiàn)SPI,SCI,PWM,A/D等功能。其內(nèi)部的兩個(gè)事件管理器模塊EVA和EVB,各包含了兩個(gè)16位通用定時(shí)器及8個(gè)16位的脈寬調(diào)制(PWM)通道,可應(yīng)用于電機(jī)控制及其他逆變器控制領(lǐng)域。美中不足的是,該系列DSP內(nèi)部沒有D/A功能,該功能通常須外接數(shù)模轉(zhuǎn)換芯片來實(shí)現(xiàn),這不僅增加了系統(tǒng)的成本,也使系統(tǒng)設(shè)計(jì)復(fù)雜化。本文提出了一種使用F2407A內(nèi)部的PWM信號(hào),經(jīng)濾波處理后實(shí)現(xiàn)D/A功能的方法。實(shí)驗(yàn)結(jié)果表明,其轉(zhuǎn)換精度可以達(dá)到10位以上專用D/A芯片的精度,且該方法設(shè)計(jì)簡單,有較好的實(shí)用價(jià)值。
2 D/A實(shí)現(xiàn)原理
在F2407A型DSP中,通過軟件編程可以很方便地對(duì)PWM信號(hào)實(shí)現(xiàn)周期和占空比的控制。PWM信號(hào)是一組幅值為3.3V的方波,可以通過傅里葉變換,使其分成直流和交流兩部分,如圖1所示,其中ud(t)是輸出的PWM信號(hào),Uo是PWM信號(hào)中的直流成分,ua(t)是信號(hào)中的交流成分。
將ud(t)用傅里葉級(jí)數(shù)表示,即
其中:
式中:f,T分別是PWM信號(hào)頻率和周期。
設(shè)PWM波形具有偶函數(shù)特性,即ud(t)=ud(-t),則式(1)中an=0,
bn=3.3/nπ{sin(nπD)-sin[2nπ(1-D/2)]} (5)
式中:n=1,2,3……;
D是PWM的占空比。
則直流電壓為
Uo=3.3D(V) (6)
從理論上分析,改變占空比就可以使直流輸出電壓Uo在0~3.3V范圍內(nèi)變化。輸出的諧波頻率是PWM頻率的倍數(shù),一般可以通過低通濾波器濾除。PWM頻率越高,濾波效果越好。
2 D/A精度分析
F2407A的工作頻率為40MHz,內(nèi)部寄存器長度為16位字長。PWM信號(hào)通過定時(shí)器計(jì)數(shù)的方式在周期中斷中獲得,因此,不可避免存在一個(gè)計(jì)數(shù)步長的量化誤差。這個(gè)誤差會(huì)產(chǎn)生一個(gè)紋波疊加在輸出直流電壓上,因此,應(yīng)盡量減少。通常當(dāng)PWM的頻率為f時(shí),DSP工作頻率為fc時(shí),這個(gè)量化誤差電壓值為
?а=3.3×(f/fc)(V) (7)
例如,當(dāng)f=20kHz,а=1.65mV,其分辨率為1/2000,接近11位D/A芯片的分辨率。
可見,當(dāng)PWM頻率越低,DSP產(chǎn)生定時(shí)中斷所需的計(jì)數(shù)值越大,其量化誤差的影響越小。但是,考慮到輸出低通濾波器的特性,當(dāng)PWM頻率降低時(shí),產(chǎn)生的諧波頻率也隨之降低,則對(duì)于帶寬和截止頻率一定的濾波器來說,就會(huì)有更多的低次諧波通過濾波器,這部分諧波疊加在直流量上同樣會(huì)產(chǎn)生誤差電壓。因此,本文D/A轉(zhuǎn)換的誤差主要來源于這兩個(gè)方面,由于兩個(gè)誤差具有相互制約性,必須通過折中的方法選取一個(gè)合適的PWM載波頻率。表1(通過Matlab仿真)是選用不同的PWM頻率和不同階數(shù)的濾波器時(shí)的性能比較。仿真時(shí)采用截止頻率為2kHz的巴特沃茲濾波器。圖2是當(dāng)PWM信號(hào)頻率為20kHz時(shí),經(jīng)不同階數(shù)濾波器后直流電壓的紋波比較,圖中從上到下依次是二階、三階、四階的濾波效果。圖3是PWM信號(hào)頻率為40kHz時(shí),濾波后直流電壓的紋波,圖中從上到下依次為二階、三階、四階的濾波效果。
表1 不同階數(shù)濾波特性的比較
濾波器 |
f/kHz |
紋波幅值/V |
D/A位數(shù) |
二階 |
20 |
0.04 |
6.4 |
二階 |
40 |
0.004 |
9.7 |
三階 |
20 |
0.0044 |
9.6 |
三階 |
40 |
0.0005 |
12.7 |
四階 |
20 |
0.0004 |
13.0 |
四階 |
40 |
0.00005 |
16.0 |
3 模擬濾波器的設(shè)計(jì)
濾波器按不同的頻域或時(shí)域特性要求,可分為巴特沃茲(Butterworth)型,契比雪夫(Chebyshev)型,貝賽爾(Bessel)型,橢圓型等標(biāo)準(zhǔn)型。相同的電路,通過選取不同的R和C參數(shù)可以實(shí)現(xiàn)不同的類型。其中,巴特沃茲型濾波器具有最平坦的通帶幅頻特性;契比雪夫型特點(diǎn)是通帶內(nèi)增益有波動(dòng),但這種濾波器的通帶邊界下降快;貝賽爾型通帶邊界下降較為緩慢,其相頻特性接近線性;橢圓型的濾波特性很好,但模擬電路復(fù)雜,元件選擇較為困難,實(shí)現(xiàn)難度大,故不常采用。本設(shè)計(jì)要求通帶盡量平坦,而且過渡帶和截止帶衰減盡量快,因此,只考慮巴特沃茲型。
模擬二階、三階電路結(jié)構(gòu)如圖4所示。對(duì)于圖4(a)所示的二階電路,其傳遞函數(shù)為
H(s)=1/[s2R1R2C1C2+(R1C2+R2C2)s+1 (8)
對(duì)于圖4(b)所示的三階電路,其傳遞函數(shù)為
H(s)=1/(a0s3+a1s2+a2s+1) (9)
式中:a0=R1R2R4C1C2C3;
a1=[R4C2C3(R1+R2)R1R2C1C2];
a2=[R4C3+C2(R1+R2)]。
具體參數(shù)計(jì)算如下。
3.1 兩階電路參數(shù)計(jì)算
巴特沃茲二階濾波器的一般表達(dá)式為
H(s)=1/(b1p2+b0p+1)
式中:p=s/ωc;
b1=ωc2R1R2C1C2=1;
b0=ωc(R1C2+R2C2)=根號(hào)2。
取ωc=2πf=4000π時(shí),可得R1=0.68kΩ,R2=10kΩ,C1=0.1μF,C2=0.01μF。實(shí)際截止頻率為1930Hz。
3.2 三階電路參數(shù)計(jì)算
三階巴特沃茲濾波器的一般表達(dá)式為
H(s)=1/(b2p3+b1p2+bop+1)
式中:b2=ωc3R1R2R4C1C2C3=1;
b1=ωc2[R4C2C3(R1+R2)+R1R2C1C2]=2;
b0=ωc[R4C3+C2(R1+R2)]=2。
取ωc=2πf=4000π,可得R1=1.2kΩ,R2=10kΩ,R4=0.4kΩ,C1=0.1μF,C2=0.01μF,C3=0.1μF,實(shí)際截止頻率為1989Hz。
4 實(shí)驗(yàn)結(jié)果
圖5是采用40kHz頻率時(shí)的濾波效果,CH1所示的是經(jīng)二階模擬濾波器后的直流電壓,CH2所示的是經(jīng)三階模擬濾波器后的直流電壓,濾波器的具體參數(shù)選用同上文,PWM的占空比為0.5。
圖5中CH1的波形中有較大的紋波毛刺疊加在直流分量上,其輸出平均值在1.6V左右,轉(zhuǎn)換精度不高。CH2的波形和CH1相比,紋波分量減小很明顯,輸出波形的平均值在1.65V左右,理論分析該波形轉(zhuǎn)換分辯率可以達(dá)到12.7左右,已經(jīng)接近或達(dá)到一般D/A芯片的分辨率要求,因此,有較好的應(yīng)用價(jià)值。
5 結(jié)語
通過外接濾波電路,DSP輸出的PWM信號(hào)可以完成D/A功能的擴(kuò)展,且合理選擇輸出PWM的頻率和濾波器的階數(shù),可以使轉(zhuǎn)換的分辨率達(dá)到12位以上,且外設(shè)濾波電路較為簡單,因此,具有一定的應(yīng)用價(jià)值。