基于PIC16C72的電力三相不對負載無(wú)功補償算法的實(shí)現
為了能夠準確地測量相位,我們采用數字鑒相法。所謂數字鑒相是指通過(guò)將兩路信號比相,在鑒相輸出信號的正脈沖內填入高速脈沖,通過(guò)記錄填入的脈沖數來(lái)測相位差。
PIC16C72單片機自身會(huì )產(chǎn)生高速的數字時(shí)鐘脈沖,這就可以直接利用該單片機的時(shí)鐘脈沖進(jìn)行相位的測量。電壓與電流的波形關(guān)系如圖1所示。
圖1中A相電壓UA,A相電流iA與比較器Ull,U12的輸出電壓波形U1,U4的關(guān)系,顯然△t與U4,iA之間的相位差φA成正比,△又與u1,u4正跳變時(shí)定時(shí)器T1計數值之差△n成正比,這樣只要得到△n就可得出φA的值。該系統中,PICl6C72采用12MHz晶振,定時(shí)器l每隔2/μs計1個(gè)數。定時(shí)器1是16位計數器,他從0~65 536不停的循環(huán)增1計數運行;定時(shí)器2是8位計數器,他從0~256循環(huán)計數,預、后分頻各16倍,An的計算式:
△n=(B一A ×256)+65 53× N
其中:A為u1發(fā)生正跳變時(shí)定時(shí)器的值;B為u4發(fā)生正跳變時(shí)的定時(shí)器的值;N為2個(gè)事件發(fā)生的間隔期間定時(shí)器的溢出次數。
因此△n為:
△t=△n ×2 ×10-6(s)
因為△n的最小值小于5ms(工作信號的1/4周期),而T1從0~65 536計數的時(shí)間是:
65 536 ×2 × 10-6 (s)=131.072(ms)
因而在u1發(fā)生正跳變到u4發(fā)生正跳變之間T1溢出的次數最多為1,即N只有2個(gè)取值:0和1,電壓uA與電流iA的相位差φA為:
根據保持寄存器和時(shí)間寄存器記錄的8次事件可得出4個(gè)φA值,經(jīng)過(guò)數據中值濾波、平均值濾波即可得到較準確的φA值。再通過(guò)查表法得到A相功率因數COSφA。同理控制多路模擬開(kāi)關(guān)可測出B相,C相的相位差和功率因數。
評論