摘? 要: 介紹了德國CIRRUS LOGIC公司推出的電子式電能表專用芯片CS5460的特點、控制方式、與輸入信號及微控制器的接口及其在電測儀表中的應用。
關鍵詞: 電子式電能表? 專用芯片CS5460? 微控制器? 電測儀表
?
近年來,電子式電能表在國際、國內得到了迅速推廣。國外許多IC廠家不失時機地推出了各種電子式電能表專用芯片。目前,國內較為常用的單相電子式電能表芯片有德國CIRRUS LOGIC公司的CS5460、美國AD公司的AD7751和AD7755;三相電子式電能表專用芯片有美國ATMEL公司的AT73C500+AT73C501(AT73C502)等。它們的共同特點是:①高度集成(集成了ADC、電壓基準、功率計算模塊);高精度(測量誤差大多小于0.3%);②易接口(易于與微控制器或步進電機接口)。這些芯片為設計低成本、高性能的電子式電能表提供了非常理想的解決方案。
值得注意的是,在這些專用芯片中,有一些不僅能夠測量功率、電能,而且能夠測量電壓、電流等其它電量,如CS5460、AT73C500+AT73C501(AT73C502)等。而許多電測儀表功能的實現(xiàn)都是以測量功率、電能、電壓、電流為基礎的,如電力設備交流阻抗測試儀、電力變壓器綜合參數(shù)測試儀等。因此,如果拓展思路,將這些電子式電能表專用芯片用于電測儀表產品的開發(fā)中,不僅可以縮短產品開發(fā)周期,而且能大大提高產品的性能。筆者就運用CS5460成功地開發(fā)出了多功能電量監(jiān)測儀。
1 CS5460的特點和內部結構
1.1? CS5460主要特點
· 符合IEC521/1036、JIS工業(yè)標準
· 能夠測量瞬時電壓、瞬時電流、瞬時功率、電能、電壓有效值和電流有效值;能完成電能/脈沖轉換
· 電能測量精度:0.1%
· 具有相位補償和系統(tǒng)校準功能
· 具有2.5V片內電壓基準(溫漂 60ppm/°C)
· 功率消耗<12mW
· 電源配置:
??? VA+=+5V,VA-=0V;VD+=+3V~+5V
??? 或? VA+=+2.5V,VA-=-2.5V;VD+=+3V?
1.2? CS5460的內部組成模塊如下:
· 一個電流通道可編程增益放大器,其增益為10和50可選
????·一個電壓通道固定增益放大器,其增益為10
·兩個同時采樣的Σ-Δ模/數(shù)轉換器
·兩個高速數(shù)字濾波器
·兩個可選用的高通濾波器
·一個功率計算引擎
·一個2.5V片內電壓基準
·一個可以檢測電力不足或電源故障的電源監(jiān)視器
· 一個持續(xù)監(jiān)視串口通訊的看門狗
· 一個2.5MHz~20MHz可選的內部時鐘發(fā)生器
· 一個雙向串行接口
· 一個電能/脈沖變換器
????· 一個校準用SRAM
2 CS5460的功能控制和測量數(shù)據(jù)輸出方式
2.1 CS5460的功能控制
CS5460的功能控制是通過寫命令字的方式實現(xiàn)的。這些8位長度的命令字包括“啟動轉換”、“同步調整”、“上電/暫??刂啤?、“掉電控制”、“校準控制”和“寄存器讀/寫” 等命令。CS5460內部有16個24位長度的用戶可訪問的寄存器。對這些寄存器的訪問是根據(jù)填寫在“寄存器讀/寫”命令中的地址進行的。這些寄存器包括“基本配置”、“電流、電壓偏移校準”、“電流、電壓增益校準”、“循環(huán)計數(shù)值N”、“電能/脈沖轉換尺度”、“前次轉換的電流、電壓、功率瞬時值”、“前個計算周期的電能、電流有效值、電壓有效值”、“時基校準”、“狀態(tài)”、“中斷屏蔽”等寄存器。
2.2 CS5460的測量數(shù)據(jù)輸出方式
在CS5460接收到“啟動轉換”命令(設置為多計算循環(huán)方式)后,電能寄存器和電壓、電流有效值寄存器內的數(shù)據(jù),每N(N值在循環(huán)計數(shù)寄存器中設置)次A/D轉換(等于一個計算周期)完畢后更新一次。而電壓、電流、功率瞬時值寄存器內的數(shù)據(jù),則每一次A/D轉換完畢后便更新一次。應當注意的是:CS5460的狀態(tài)寄存器中的“DRDY”(數(shù)據(jù)有效)位,在每個計算周期(N次A/D轉換完畢)后才置位,同時在/INT引腳產生中斷信號(當屏蔽寄存器的“DRDY”位未被屏蔽時),所以若讓電壓、電流、功率的瞬時值數(shù)據(jù)每更新一次就產生一個中斷請求,需將循環(huán)計數(shù)寄存器的值N設為1。微控制器進行中斷處理的一般過程是:讀CS5460狀態(tài)寄存器→屏蔽中斷→進行中斷服務處理→將步驟一讀出的值寫回CS5460狀態(tài)寄存器(清狀態(tài)位)→開中斷→返回。
3 CS5460的模擬信號輸入電路
CS5460的電流通道可與低功耗分流器或互感器接口;電壓通道可與阻性分壓器或互感器接口。其電流通道的可編程增益放大器(PGA)的增益可設為10和50,分別對應于最大有效值為150mV和30mV的交流信號輸入;電壓通道的最大有效值輸入為150mV。由于CS5460的Σ-Δ型模/數(shù)轉換器采用過采樣原理,對高頻噪聲有較強的抑制作用,因而對輸入信號無需進行復雜的濾波處理(引入阻容濾波電路反而容易引起相移)。
圖1是筆者在課題中采用的模擬信號輸入電路。在圖1中,PT為變比1:1的電流型電壓互感器,CT為變比2000:1的電流互感器。取樣電阻R1、R2、R5、R6的阻值由被測信號的最大值決定。經變換后的被測信號以差模電壓的形式接到CS5460的模擬信號輸入端。由于互感器角差的影響,可能造成輸入信號的相移,使功率測量的誤差增大。而CS5460具有相位補償功能(可進行-2.4°至+2.5°的相位補償,步進0.34°),可以大大減小互感器角差的影響。
4 CS5460與微控制器的接口及編程
CS5460有四條串行接口線:/CS、SDI、SDO和SCLK。/CS為片選控制線,低電平有效;SDI為串行數(shù)據(jù)輸入線;SDO為串行數(shù)據(jù)輸出線;SCLK為串行時鐘,用于控制CS5460與微控制器之間數(shù)據(jù)傳輸同步。
每次數(shù)據(jù)讀/寫操作都要通過SDI引腳寫入一個8位的命令字節(jié),該操作需要8個SCLK時鐘周期。如果寫入的是“寄存器讀/寫”命令,那么接下來應通過SDI引腳寫入24位數(shù)據(jù)或通過SDO引腳輸出8、16、24位數(shù)據(jù)。SCLK時鐘周期的個數(shù)由數(shù)據(jù)位數(shù)決定。應當注意的是,在通過 SDO引腳讀取數(shù)據(jù)的時候,必須同時向SDI引腳寫入與8、16、24位數(shù)據(jù)大小相對應的1、2、3個空操作(NOP)命令字節(jié)(0xFE)。
圖2是筆者在課題中使用的CS5460與MCS51系列單片機的接口原理圖。
?
下面是與此接口方式相對應的寫命令字、寫寄存器和讀寄存器操作的51匯編指令。
;SDI??? BIT?? P1.0
;SDO? BIT?? P1.1
;SCLK???BIT?? P1.2
RD_REG:????????? ;讀寄存器程序入口
;????? IN: A? ?? 存放“讀寄存器”命令字
;????? OUT: 32H? 存放讀出數(shù)據(jù)高字節(jié)
;????????????31H? 存放讀出數(shù)據(jù)中字節(jié)
????;????????????30H? 存放讀出數(shù)據(jù)低字節(jié)
???????????????
???? LCALL? SET_COM
????????MOV??? R2 , ?#32H
????????MOV??? R3,?? #03H
RDLP1:?MOV??? R4,?? #08H?
????????MOV??? R0,?? #0FEH?
RDLP2:?CLR???? SCLK?
????????NOP?
????????MOV?? C,? SDO?
????????RLC??? A?
????????MOV?? R1,? A?
????????MOV?? A,? R0?
????????RLC??? A?
????????MOV?? R0,? A?
????????MOV?? SDI,? C
??????? SETB? SCLK
??????? MOV? A,? R1?
??????? DJNZ? R4,? RDLP2?
??????? MOV? @R2, A?
??????? DEC?? R2?
?????? ?DJNZ? R3,? RDLP1?
??????? SJMP? COM_END?
WR_REG:?????????? ;寫寄存器程序入口?
;IN: A??????? 存放“寫寄存器”命令字?
;?? 32H??????? 存放寫入數(shù)據(jù)高字節(jié)?
;?? 31H??????? 存放寫入數(shù)據(jù)中字節(jié)?
;?? 30H??????? 存放寫入數(shù)據(jù)低字節(jié)???? ?
?????????????????? LCALL ? SET_COM ?
???????? MOV?? R2,? #32H?
???????? MOV?? R3,? #03H?
RWLP1:??MOV?? R4,? #08H?
???????? MOV?? A,?? @R2
RWLP2:? RLC???A
?????????MOV?? SDI,? C
?????????CLR???SCLK
?????????NOP
?????????SETB??CLK
?????????DJNZ??R4, RWLP2
?????????DEC???R2?
?????????DJNZ??R3, RWLP1?
?????????SJMP?? COM_END?
SET_COM:????????? ;寫命令字程序入口?
;?IN:?A??????? 存放命令字?
??????? MOV?? R4, #08H?
COMLP1: ? RLC???A?
???????????MOV?? SDI,? C
???????????CLR?? SCLK
???????????NOP?
?????????? SETB?? SCLK?
?????????? DJNZ?? R4, COMLP1?
COM_END: RET?
5 CS5460在多功能電量檢測儀中的應用
5.1? 多功能電量檢測儀簡介??
多功能電量檢測儀是筆者研制的供電部門工作人員使用的便攜式儀器,它能在不斷電不拆線的情況下現(xiàn)場檢驗單相機械式電能表的精度,同時還能檢測回路的電壓、電流、有功功率、功率因數(shù)和頻率,是進行用電監(jiān)察、供電質量監(jiān)測的理想工具??紤]到CS5460的基本功能與該儀器的功能有許多相似之處,如測量電壓有效值、電流有效值、有功功率和電能,而且將CS5460的基本功能加以變通運用,還可以派生出一些其它功能,如測取頻率和功率因數(shù)。我們在該儀器中采用了CS5460作為其核心。
圖3是多功能電量檢測儀的硬件框圖。
?
?
該儀器由互感器電路及流/壓變換電路將回路的電壓、電流信號分別變換為最大有效值為150mV和30mV(將CS5460電流通道的PGA增益設為50)的小電壓信號。CS5460測取電壓有效值、電流有效值、有功功率、電能、電壓瞬時值后,由單片機進行數(shù)據(jù)處理。該儀器中的EEPROM存有各個電量的系數(shù)(從CS5460讀取的數(shù)據(jù)乘以系數(shù)才是最終結果)以及校驗電能表時設定的轉盤圈數(shù)和電能表常數(shù)。電源芯片MAX756提供+5V的儀器工作電壓。
在該儀器中,將CS5460的工作時鐘MCLK選定為4.096MHz,分頻系數(shù)K設為1,循環(huán)計數(shù)寄存器的N值設為4000,則一個基本的計算周期為1024×N)/(MCLK/K)=1s。
5.2? 運用CS5460測取各電量的方案
5.2.1 電壓有效值、電流有效值、有功功率、功率因數(shù)的測量
電壓、電流有效值可直接從電壓有效值寄存器、電流有效值寄存器中讀取。而由于計算周期設為1s,電能寄存器中的電能值即為有功功率值,因此有功功率值可直接從電能寄存器中讀出。功率因數(shù)可由公式COSΦ=P/(UI)得出。
5.2.2? 頻率的測量
將循環(huán)計數(shù)寄存器的N值改設為1,此時電壓、電流瞬時值數(shù)據(jù)的刷新率為4000Hz,這就為通過軟件進行信號過零判斷創(chuàng)造了條件。頻率測量的具體方法是:通過一個過零函數(shù)來記錄電壓信號正向過零次數(shù),并同時記下讀取數(shù)據(jù)次數(shù),如果取10個周期的平均時間為實測周期時間,那么當記到第11次正向過零時,就停下來算出每個周期內讀取數(shù)據(jù)次數(shù),默認兩次讀取數(shù)據(jù)的時間差為250μs,便可算出頻率。
5.2.3 電能累計值的測量
電能表誤差的計算公式如下:
其中,E為電能表轉盤轉過設定圈數(shù)所用時間(靠兩次按鍵來確定)中的電能累計值,單位為焦耳。將循環(huán)計數(shù)寄存器的N值改設為40,則此時電能寄存器數(shù)據(jù)刷新周期為10ms,即可以每10ms從電能寄存器中讀取數(shù)據(jù)并在單片機中累加。由于一次按鍵的時間為20~30ms,并考慮到人為因素造成的計時誤差,則因電能寄存器數(shù)據(jù)刷新時間間隔所引起的計時誤差是可以忽略的。
本文介紹的以CS5460為核心的多功能電量檢測儀已于2000年6月通過陜西省計量局的技術鑒定,其電壓、電流、有功功率、電能的測量精度均達到0.2級標準,頻率測量誤差小于0.02Hz,完全能滿足現(xiàn)場應用要求。
?
參考文獻
1 Single Phase Bi-Directional Power/Energy IC-CS5460.Preliminary Product Information.APR’99DS279PP3,In
ternet網址:http://www.crystal.com
2 張志偉.電測新技術及其發(fā)展.電測與儀表,1997(9)
3 中華人民共和國電力標準DL/T585—95