基于DSP芯片TMS320F240的電壓無(wú)功控制器的設(shè)計(jì)
電壓無(wú)功控制器通常由單片機(jī)系統(tǒng)構(gòu)成,它集數(shù)據(jù)采集、數(shù)據(jù)處理、控制判斷和控制輸出于一身。這就使得單片機(jī)負(fù)擔(dān)比較重,而且限于單片機(jī)自身的處理能力,無(wú)法實(shí)現(xiàn)復(fù)雜的數(shù)據(jù)處理和控制策略。將DSP芯片應(yīng)用到電壓無(wú)功控制器,可以有效地提高其性能。
TMS320F24X 系列是美國(guó)TI公司推出的高性能16位定點(diǎn)DSP,專(zhuān)門(mén)為電機(jī)控制和其它控制系統(tǒng)而設(shè)計(jì)。TMS320F240是其中典型的一種,片內(nèi)的外設(shè)和強(qiáng)大的處理 能力使它很適合用于電壓無(wú)功控制器。本文著重介紹其于TMS320F240的電壓我功控制器的設(shè)計(jì)及其編程。
1 基于TMS320F240的電壓無(wú)功控制器的設(shè)計(jì)
1.1 TMS320F240簡(jiǎn)介
TMS320F240主要由CPU、存儲(chǔ)器和片上外設(shè)三部分組成,其主要特點(diǎn)如下:
·采用改進(jìn)型哈佛結(jié)構(gòu),具有分離的程序總線(xiàn)和數(shù)據(jù)總線(xiàn),使用四級(jí)流水線(xiàn)作業(yè),并且允許數(shù)據(jù)在程序存儲(chǔ)空間和數(shù)據(jù)存儲(chǔ)空間之間傳輸,從而提高了運(yùn)行速度和編程的靈活性。指令執(zhí)行速度為20MIPS,幾乎所有的指令都可以在50ns的單周期內(nèi)執(zhí)行完畢。
·存儲(chǔ)器可尋址空間224K字(64K字程序空間,64K字?jǐn)?shù)據(jù)空間,64K字I/O空間,32K字全局空間);片內(nèi)有16K字的FLASH EEPROM。
·雙10位A/D轉(zhuǎn)換器,共16位輸入通道,轉(zhuǎn)換時(shí)間為6μs。事件管理器中有3個(gè)定時(shí)/計(jì)數(shù)器,4個(gè)捕獲單元等。
1.2 控制器的硬件結(jié)構(gòu)
控制器總體結(jié)構(gòu)如圖1所示,由CPU、開(kāi)關(guān)量輸入、開(kāi)關(guān)量輸出、模擬量輸入、鍵盤(pán)顯示和通信等模塊組成。CPU模塊采用主從式結(jié)構(gòu):?jiǎn)纹瑱C(jī)(采 用INTEL公司的80C196)為主,完成外圍電路的控制,處理整個(gè)控制器的工作流程; TMS320F240為從,完成數(shù)據(jù)采集,數(shù)據(jù)計(jì)算等。單片機(jī)和TMS320F240之間采用雙口RAM進(jìn)行通訊。
XTAL1和XTAL2之間接10MHz的晶振,經(jīng)片內(nèi)PLL時(shí)鐘模塊后系統(tǒng)時(shí)鐘為 20MHz。16個(gè)A/D通道分為兩組:AD0~AD3和AD8~AD11為1組,采集變壓器#1高壓主側(cè)電壓電流及低壓側(cè)電壓信號(hào);AD4~AD7和 AD12~AD15為II組,采集變壓器#2電量。高壓側(cè)每一相的電壓電流同步采集,可以保證計(jì)算準(zhǔn)確。擴(kuò)展16K字外部數(shù)據(jù)存儲(chǔ)器用來(lái)存放采集的電壓、 電流。擴(kuò)展2K×8位的雙口RAM用來(lái)和單片機(jī)(80C196)通訊。采用雙口RAM進(jìn)行通訊具有程序設(shè)計(jì)簡(jiǎn)單、數(shù)據(jù)傳輸方便快速等優(yōu)點(diǎn)。
2 TMS320F240的編程
TMS320F240的程序采用匯編語(yǔ)言編寫(xiě),其流程見(jiàn)圖3。在程序初始化部分,對(duì)芯片內(nèi)部寄存器進(jìn)行設(shè)置。通用定時(shí)器1設(shè)置為連續(xù)遞增計(jì)數(shù)模式,代碼如下:
LDP #232
SPLK #1000000101000000h,T1CON
SPLK #0000000000101010b,GPTCON
SPLK #1563,T1PR ;set sample frequency=20000/2/1563=*kHz
頻率為*kHz。數(shù)據(jù)采集部分采用定時(shí)器1,數(shù)據(jù)長(zhǎng)度為128點(diǎn)。這樣,對(duì)于50Hz信號(hào)可保證采樣為一個(gè)整周期。A/D轉(zhuǎn)換設(shè)置為雙A/D同步采術(shù),如通道0與通道8采樣時(shí),設(shè)置A/D的代碼為:
LDP #224
SPLK #1001100100000000b,ADCTRL1
SPLK #0000000000000101b,ADCTRL2
諧波分析采用基2的128點(diǎn)快速速傅立葉變換,取前30次諧波數(shù)據(jù)傳遞給80C196。
程序中每一相的電壓有效值、電流有效值、有功功率、無(wú)功功率使用下列各式計(jì)算(其中N=128)。
電壓有效值:
電流有效值:
有功功率:
無(wú)功功率:
TMS320F240中沒(méi)有開(kāi)平方運(yùn)算的指令,電壓、電流計(jì)算中的開(kāi)平方采用牛頓代法。開(kāi)平方函數(shù)f(x)=x2-c=0的根的牛頓迭代公式為:
迭達(dá)收斂的速度取決于x初值的選取。初值x0越接近真值,收斂速度越快。政黨情況下,電網(wǎng)的電壓及電流尤其是電壓變化范圍不大,初值比較好選取。
由于單相電壓電流采用同步采樣,功率的計(jì)算比較準(zhǔn)確。三相電路的有功功率及無(wú)功功率分別為它們的各相之和。電路為三相對(duì)稱(chēng)時(shí),可采用單相功率的3倍作為總的三相功率。
TMS320F240與80C196的通訊采用雙口RAM完成。在雙口RAM中定義寄存器單元存放命令字DSP_MCU_CMD。DSP讀取判 斷是否進(jìn)行采樣、是否進(jìn)行FFT、是否計(jì)算有關(guān)電量。DSP完成指令后,將命令字相應(yīng)位置1; 80C196檢測(cè)該位,從雙口RAM中讀取數(shù)據(jù)。
3 實(shí)驗(yàn)結(jié)果
利用信號(hào)發(fā)生器產(chǎn)生正弦信號(hào),疊加2.5V的直流偏移后輸入到兩個(gè)A/D同步采集通道(通道0和通道8),進(jìn)行測(cè)量實(shí)驗(yàn)。信號(hào)I視為電壓無(wú)功控 制器待測(cè)量的電壓信號(hào);信號(hào)II視為電流信號(hào)。實(shí)驗(yàn)一的輸入信號(hào)波形見(jiàn)圖4,頻率為50.63Hz,電壓U(信號(hào)I)領(lǐng)先電流I(信號(hào)II)27.6度, 實(shí)驗(yàn)結(jié)果見(jiàn)表1;實(shí)驗(yàn)二輸入信號(hào)波形見(jiàn)圖5,頻率為49.69Hz,電壓U(信號(hào)I)落后電流I(信號(hào)II)44.5度實(shí)驗(yàn)。
TMS320F240的應(yīng)用,極大地改善了電壓無(wú)功控制器的性能,使得控制器能夠?qū)χT如過(guò)壓、欠壓、缺相、諧波越限等故障做出反應(yīng)。同時(shí)電壓無(wú)功控制器的數(shù)據(jù)處理與外圍控制分開(kāi),有利于系統(tǒng)的模塊化設(shè)計(jì),提高了系統(tǒng)的可靠性。