1 引言
隨著電力事業(yè)及科學(xué)技術(shù)的高速發(fā)展,機(jī)械式電能表逐漸被電子式電能表取代。與傳統(tǒng)機(jī)械式電能表相比,電子電能表精度高、制造成本低,并且計量參數(shù)全,易于電源管理和電力運行過程的遠(yuǎn)程監(jiān)控。
本文給出了基于SAMES公司的SA9903B單相電能計量器件,并以宏晶公司的STC12C5410單片機(jī)為控制器設(shè)計開發(fā)的一款新型單相電能表。該器件具有SPI接口,單片機(jī)可通過SPI接口讀取內(nèi)部的電參數(shù)。STC12C5410是新一代增強(qiáng)型、低功耗51單片機(jī),具有2 KB非易失性E2PROM和SPI接口,易于與計量器件SA9903B接口,存儲電能累計量。
2 SA9903B的簡介
SA9903B的主要特性:實時測量單相有功/無功能量;實時測量電壓有效值和頻率;集成內(nèi)置參考電壓源;具有SPI(串行外圍接口)總線接口;功耗低于60 mW,具有靜電保護(hù)功能;工作溫度范圍寬:符合IEC6103一級交流電能表要求。
SA9903B的內(nèi)部結(jié)構(gòu)如圖1所示。它由2路模數(shù)轉(zhuǎn)換器、4個24位寄存器、內(nèi)部參考電壓基準(zhǔn)和SPI串行通信接口控制器等組成。其中,寄存器用于存儲有功電能、無功電能、電壓有效值及頻率。GND為模擬地。VDD為電源正極,當(dāng)采用分流電阻檢測電流時,接+2.5 V;當(dāng)采用電流互感器時,接+5 V。VSS為電源負(fù)極,當(dāng)使用分流電阻檢測電流時,接-2.5 V;當(dāng)使用電流互感器時,接地。IVP為模擬電壓輸入端,當(dāng)測量的電壓為額定電壓時,要保證流入到內(nèi)部模數(shù)轉(zhuǎn)換器電流的有效值為14μA,峰值不超過+25μA。VREF為參考電源的外接電阻端,通常需要接對地24 kΩ電阻。FMO為電壓過零脈沖輸出端,在輸入電壓的上升沿產(chǎn)生占空比50%的脈沖。CS為片選信號輸入端,高電平有效。DI、DO為串行數(shù)據(jù)的輸入、輸出端。SCK為串行時鐘信號輸入端。OSC1、OSC2為外部晶體振蕩器的輸入、輸出端。
3 工作原理和SPI接口通信
3.1 SA9903B的工作原理
SA9903B為混合模擬/數(shù)字信號的CMOS集成電路,內(nèi)部含有兩個16位二階的∑-△模/數(shù)轉(zhuǎn)換器,分別對電壓和電流模擬信號進(jìn)行數(shù)字化處理,將瞬時電壓與瞬時電流直接相乘得到瞬時功率。瞬時功率經(jīng)低通濾波處理可獲得瞬時有功功率,而瞬時無功功率是通過對電流信號移相90°后得到。瞬時有功功率和瞬時無功功率經(jīng)過數(shù)字/頻率轉(zhuǎn)換器轉(zhuǎn)換成正比的脈沖信號。這個信號被有功電能和無功電能計數(shù)器隨時間累加。器件內(nèi)部設(shè)有電壓過零檢測電路。電壓每過一次零點產(chǎn)生一個占空比為50%的脈沖,頻率寄存器將其累加。電壓有效值是通過累加每個瞬時電壓采樣值并進(jìn)行數(shù)字處理后得到的,可直接測量電路的4個參數(shù):有功電能、無功電能、電壓有效值和頻率值。
3.2 SPI接口通信
SA9903B具有SPI串行通信接口,易于實現(xiàn)與單片機(jī)的通信。SPI通信是通過DI、DO、CS和SCK等4個引腳實現(xiàn)的。為保證能正確讀取SA9903B的24位數(shù)據(jù)寄存器,要嚴(yán)格按照通信命令格式及時序的要求進(jìn)行。讀取寄存器命令格式見表1,命令序列由9位二進(jìn)制數(shù)組成,前導(dǎo)位是3位固定值“110”,不能更改,后6位A5~A0為寄存器的地址碼,表中“X”為0或1均可,未用位。圖2為9位數(shù)據(jù)的操作時序。每個寄存器可以單獨讀取,也可以連續(xù)讀取多個寄存器,DO引腳隨時鐘下降沿變?yōu)榈碗娖?,此后每個時鐘的下降沿,DO引腳數(shù)據(jù)有效。24位數(shù)據(jù)是以先高位后低位的順序移出。
為了與SA9903B的SPI通信對應(yīng)。STC12C5410單片機(jī)選擇主模式作為主機(jī)工作,SA9903B作為從機(jī)工作。主機(jī)和從機(jī)的兩個移位寄存器可以看作是一個16位循環(huán)移位寄存器。當(dāng)數(shù)據(jù)從主機(jī)移位傳送到從機(jī)的同時,數(shù)據(jù)以相反的方向移入。這意味著在一個移位周期中,主機(jī)和從機(jī)的數(shù)據(jù)相互交換。按照SA9903B的時序要求,STC12C5410配置為:控制位CPHA=1,前時鐘沿驅(qū)動,后時鐘沿采樣,CPOL=0,SPICLK空閑時為低電平,前時鐘沿為上升沿,后時鐘沿為下降沿。SPI時鐘速率選擇為CPU-CLK/32。
4 硬件電路設(shè)計
單相電能表的主電路如圖3所示,由電量計量器件SA9903B、輸入分流器、分壓電阻、光電隔離、單片機(jī)STC12C5410AD、鍵盤電路、顯示電路及通信RS485接口電路等組成。被測電壓和電流分別通過分壓和分流進(jìn)入SA9903B的測量通道,內(nèi)部兩路∑-△模/數(shù)轉(zhuǎn)換器,分別對電壓和電流模擬信號進(jìn)行轉(zhuǎn)換,然后把累積的有功電能和無功電能存入兩個24位寄存器,同時把連續(xù)測量的電壓有效值及頻率值存入各自的24位寄存器。單片機(jī)與SA9903B通過4路光電隔離使SPI引腳對應(yīng)連接,單片機(jī)設(shè)為主工作模式,完成SA9903B內(nèi)部電參數(shù)的讀操作。單片機(jī)對電參數(shù)處理后,進(jìn)行顯示,并響應(yīng)遠(yuǎn)程485命令實時發(fā)送讀取的電參數(shù)。通過鍵盤切換顯示和校準(zhǔn)電能表采樣。電路設(shè)計中,為提高SPI通信的可靠性,應(yīng)在時鐘CLK、DI、DO各線路上加100 pF的對地電容,濾除干擾毛刺。為保證采樣精度,SA9903B的引腳VDD和VSS對地各接一只820 nF的陶瓷電容,且應(yīng)盡可能靠近SA9903B放置。
5 軟件設(shè)計
該電能表的軟件設(shè)計主要實現(xiàn)SPI數(shù)據(jù)讀取以及處理、參數(shù)的顯示、鍵盤的處理和485通信控制等功能。程序采用匯編語言編寫,程序流程圖如圖4所示。
6 結(jié)束語
該系統(tǒng)設(shè)計采用SA9903B,大大減少了外圍元件數(shù)目,提高了系統(tǒng)的測量精度。同時采用485總線傳輸實測數(shù)據(jù),滿足遠(yuǎn)程監(jiān)控的需要。