單片機是一種集成在電路芯片,是采用超大規(guī)模集成電路技術把具有數據處理能力的中央處理器CPU隨機存儲器RAM、只讀存儲器ROM、多種I/O口和中斷系統、定時器/計時器等功能(可能還包括顯示驅動電路、脈寬調制電路、模擬多路轉換器、A/D轉換器等電路)集成到一塊硅片上構成的一個小而完善的計算機系統。
目前,以單片機為基礎的數字式電氣測量、保護裝置已成為主流形式。交流信號直接采樣也已成為一種普通的方法??焖俑盗⑷~算法是其中的主要算法,而最小二乘方算法,計算量很大,尤其在單片機的處理能力有限的情況下,既要保證實時性,又要保證計算速度,不經過精心設計和程序優(yōu)化,很難保證二者的統一。
通過減少采樣次數、使用每周濾四個采樣點擬合的濾波器和一套優(yōu)化措施,使該算法計算速度大大提高,可以勝任工頻向量的實時測量,因而可以用于過流、速斷、方向保護等多個方面。本文分析了濾波器中的向量相位關系,同時給出了以此為基礎的兩線制功率計算舉例。該方法已通過實際應用檢驗。
1 最小二乘方濾波器的構造
根據文獻[1~3]的研究結果,對每一路信號,輸入電壓函數可表示為:
在一般的測量、保護應用中,只需關心基波成分。為減少計算量,應最大限度地減少采樣次數。根據采樣定理,一個正弦函數的離散采樣次數量少每周波3次。為了方便,將每周波采樣次數定為4次,即采樣周期為5ms.則公式(1)中只能包含直流和工頻分量。將直流分量按泰勒級數展開并取其前兩項,則(1)式成為:
其中,P0為直流分量值,P1為基波峰-峰值,θ1為基波分量在采樣時刻相對于零點的相位角。
若以最近連續(xù)4次采樣值為樣本,可得到4個采樣方程。如將P0、-P0λ、P1cos(θ1)P1sin(θ1)作為待測未知數,可將4個采樣方程表示成如下矩陣:
若分別用符號A表示系數矩陣,X表示未知參數向量,U表示采樣值,則:
其中A-1表示A的逆矩陣,亦即向量X的最小二乘方濾波器。根據文獻[3],這個濾波器為:
因此,
實際應用中,為了減少單片機順序采樣帶來的時間延遲所造成的計算誤差,硬件電路應具有同步采樣功能。其作用就是在采樣時刻將所有電氣信號分別保持下來。
2 數字濾波器中瞬時相量的關系
若用ua、ub、uc分別表示三相電壓相量,Ua,Ub、Uc表示其有效值,初始相位角分別用θua、θub、θuc表示;用ia、ib、ic分別表示三相電流相量,Ia、Ib,Ic表示其有效值,初始相位角分別為θia、θib、θic.則(4)式就是對應相量在X軸上的投影,即矢量的實部;(5)式就是對相量在Y軸上的投影,即矢量的虛部,(4)和(5)式中的θ1是上述相量相對于20ms時間窗之初時刻的相位角。
圖1表示了A相電壓和A相電流的相位關系,其他依此類似。
上述相量的相位關系是相量進一步運算的基礎。
3 兩線制功率計算
目前,高壓線路的功率測量一般采用三相電壓和兩組電流,即兩線制功率表方法。用式(4)、(5)、(6)、(7)和(10)可以實現線路有功功率和無功功率測量,具體過程如下:
兩線制的前掉是假設三相電流平衡,即:
其中,uab為A相和B相之間的線電壓;ucb為C相和B相之間的線電壓。
將(6)和(7)式結果帶和(14)、(15)和(13)式,即測得三相平衡線路的有功功率。
如果輸入電壓是相電壓,則:
將上式中的余弦函數展開后,再鈄(6)和(7)式的對應結果分別代入即可。
無功功率的計算只需將(14)、(15)和(16)式中的余弦運算改為相應的正弦運算即可。
4 基于單片機應用的優(yōu)化措施
從目前市場情況來看,雖然單片機性能在不斷提高,如INTEL單片機從8位、16位到32位不斷推陳出新,但真正得以廣泛采用的并不是性能最好的產品。從實際應用來看,有時必須面對一個受限制的客觀現實。就本應用來說,采用以下措施可大大提高程序的計算速度。
4.1 變浮點運算為整數運算
對于(4)~(10)式來說,采用C或PL/M高級語言進行浮點運算既方便,精度又高。但與整數運算相比,浮點運算速度要慢得多。因此,為提高計算速度,應盡量采用整數運算。從工程實際來看,A/D轉換后的結果一般是雙字節(jié)整數,可與放大10位的最小二乘濾波器直接運算,則(4)式變?yōu)椋?/p>
(17)、(18)式只有6次4字節(jié)的長整數乘法和4次加法。即使對12位A/D而言,(17)、(18)式的計算結果也不會溢出。由于濾波器擴大10倍時是整數,沒有四舍五入,因此計算過程無任何附加誤差。
4.2 快速求平方根法
從(4)~(10)式來看,耗時最多的是(10)式,即求平方根運算,獲得基波的峰-峰值。
如果直接采用標準浮點庫提供的開平方函數,16MHz的80196KC需3ms左右。若采用文獻[4]中的整數查表法,或文獻[5]提供的精度為1%的二分法,相同條件下求根所需時間一般在100~300μs之間,計算速度提高10倍以上。
本文提出的每周波4個采樣點的最小二乘方濾波器可在一般單片機中實現工頻信號的實時相量測量。算法進一步優(yōu)化后,可在一個周波的時間窗內對多路信號作出實時反映,滿足一般保護的技術要求。該算法還可以實現其他保護和測量功能。