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