0809的最大工作頻率可以達到 1280kHz, 這樣轉換一次就只要50us,而對于50Hz的交變電流,一個周期為20ms,這樣至少就可以取到400個值即200對電流電壓值。
有了每個時刻的瞬時電壓值和瞬時電流值,則有功功率就能很容易的計算出來。對于無功功率,可以這樣子來構想一個模型,對于200個電壓值和電流值,讓電壓移相 ,即01H的電流值與第51個電壓值(指針地址為33H的電壓值)相乘,依此類推,第151個電流值與第1個電壓值相乘,直到第200個電流值與第50個電壓值相乘。所有的乘積相加,再除以該交流電周期,無功功率即可算出,結果存入存儲器中。無功功率已知,視在功率也可算出來。
有功功率計算的具體的程序如下:
MAIN: MOV R6,#00H ;計算值存儲位置
MOV R2,#C8H ;設置循環次數
MOV R1,#00H ;設置數據區首地址
P: MOV A,@R1 ;讀取電壓值
INC R1 ;指向下一個通道
MOV B,@R1 ;讀取電流值
INC R1 ;指向下一個通道
MUL AB ;電壓電流相乘
ADD A,@R6 ;累加乘積
MOV @R6,A ;存儲計算值
DJNZ R2,P ;200個瞬時值計算完畢否?未完則繼續
MOV A,@R6
MOV B,#14H ;計算功率
DIV AB
MOV @R6,A ;存儲功率
無功功率計算的具體程序如下:
MAIN: MOV R2,#96H
MOV R6,#00H
MOV R1,#33H
MOV R4,#33H
MOV R5,#00H
MOV R7,#97H
Q1: MOV A,@R1 ;電壓從第51個值開始與電流第一個值相乘
INC R1
INC R1
MOV B,@R3
INC R3
INC R3
MUL AB
ADD A,@R6
MOV @R6,A
DJNZ R2,Q1
Q2: MOV A,@R5 ;電壓第一個值與電流第151個值做乘法
INC R5
INC R5
MOV B,@R7
INC R7
INC R7
MUL AB
ADD A,@R6
MOV @R6,A
DJNZ R2,Q2
MOV A,@R6
MOV B,#14H ;計算功率
DIV AB
MOV @R6,A ;存儲功率 |