基于STPM01的防竊電電能表設計
不論在發達國家還是在發展中國家,竊電都是一個非常棘手的問題,每年都給供電企業造成巨大損失。現在的防竊電方法多是從管理上采取措施,用這些方法即使查出了竊電行為,也往往由于缺乏依據而無法確定處罰額,甚至有時供電企業面臨無法拿出竊電證據的尷尬。只有提高電能表本身的防竊電技術,才能從根本上杜絕竊電發生。由于竊電方法千變萬化,防竊電電表設計一直是電表工程師面臨的嚴峻挑戰,數字式電表的發展為解決竊電問題提供了新途徑。本文介紹的單相數字式防竊電電能表采用了計量芯片STPM01和微控制器P89LPC9401,可以有效防止多種竊電行為。
STPM01計量芯片簡介
STPM01是ST公司推出的第一款電能計量專用芯片,有一個電壓通道和兩個電流通道,可以測量有功電能、無功電能、視在電能、電網頻率、電壓有效值和瞬時值以及電流有效值和瞬時值。其電流傳感器可以選用ROGOWSKI線圈、電流互感器或者錳銅分流器。它是一款高精度計量芯片,在5%到1,000%動態范圍內,可達到0.2%。STMP01主要由兩部分組成即模擬部分和數字部分,包括前值放大器、A/D轉換器、帶隙電壓基準、調壓器、DSP和SPI接口等。
圖1:STPM01內部框圖。
芯片上還配置了56位OTP存貯器,可以將校表數據等信息燒錄到芯片上。調壓器除了向內部模擬和數字電路供電外,還向外部提供3V和1.5V電源。
電壓通道的差分放大器增益為4倍,其輸入最大差分信號為±0.3V。電流通道除了前置放大器外,還有一個可編程放大器,兩個電流通道的放大倍數可獨立編程,這為電流通道選用不同的傳感器提供了方便。
STPM01內部有2個有功電能寄存器,即0類有功電能和1類有功電能。0類為基波有功電能,1類為含諧波的總有功電能(FUND=1時)。因此利用這兩個寄存器可以計算出諧波電能含量。除測量和配置寄存器外片內還設有狀態寄存器和模式寄存器。
通過設置配置位,STPM01可以獨立工作,也可以作為單片機外圍設備。在獨立模式下,STPM01(MON和MOP管腳)可以直接驅動步進電機計度器,同時LED管腳輸出有功電能脈沖,脈沖常數通過配置位選擇。此模式下,SDA/TD管腳輸出竊電指示信號,SCL/NLC管腳輸出無負載指示信號,SYN 管腳輸出電能反向指示信號。上電后,芯片按照OTP中的配置信息進行工作。
作為單片機外圍設備時,STPM01可作為從機通過SPI接口與單片機通信,將測量數據、狀態信息和配置信息傳送給單片機,單片機還可以修改其配置位,實時更改STPM01的工作方式。配置位APL=0時,MOP管腳輸出電壓過零信號,MON輸出看門狗信號。而通過設置配置位KMOT,LED管腳可以輸出基波有功電能、總有功電能、無功電能或視在電能脈沖;APL=1時,MOP腳輸出電壓A/D轉換值,MON腳輸出電流A/D轉換值,LED腳輸出電流通道選擇信號。
STPM01有兩個電流通道,可分別用于監測火線和零線電流,當兩者的差別超過設定閥值時,芯片進入竊電狀態,取較大者用于電能計算。閥值可通過配置位設為12.5%或6.25%。當兩通道電流符號不同時,不判斷電流大小直接進入竊電狀態。在竊電狀態下,竊電狀態位BIT置位,如果此時芯片工作在獨立模式,竊電狀態還通過SDATD管腳輸出。
STPM01還有一種單線計量模式。如果FRS設為1,在沒有輸入電壓信號或電壓信號穩定不變時,芯片進入單線計量模式。此時不對電壓信號采樣,而用設定的額定電壓計算電能(按功率因數為1計算)。單線計量模式要求電流傳感器必須采用ROGOWSKI線圈。累加方式也可以選擇,配置位ABS置1時電能按絕對值累計,ABS清零時電能按代數和累計。
P89LPC9401微控制器簡介
P89LPC9401是一款低成本單片機,它采用了高性能處理器結構,指令執行時間只需2到4個時鐘周期,6倍于標準80C51器件。它實際上是 P89LPC931微控制器和PCF8576D液晶驅動器的復合體。其主要特性如下:8KB的Flash程序存儲器,單字節擦除特性使每個字節都可用作非易失性數據存儲器;256B RAM數據存儲器;4×32段LCD驅動器;2個模擬比較器,2個16位定時/計數器和1個RTC定時器;8個鍵盤中斷輸入,2路外部中斷輸入;4個中斷優先級;有20~23個I/O口,端口驅動能力20mA;具有I2C、SPI和增強型UART端口;CPU時鐘可選擇片內看門狗振蕩器、片內RC振蕩器、外部晶振振蕩器或外部時鐘源;掉電檢測可在電源故障時使系統安全關閉;具有空閑和兩種不同的掉電模式及喚醒功能;可選擇片內復位或外部復位;支持ICP、 ISP和IAP編程,Flash保密位防止程序讀出;VDD工作電壓范圍為2.4~3.6V,I/O口可承受5V。
系統方案
電表設計用于220V/50Hz電網,基本電流10A,最大電流40A。主要由計量模塊、系統控制模塊、數據顯示及存貯模塊、通訊模塊、RTC實時時鐘和電源模塊組成。
圖2:電表設計系統框圖。
電壓和電流分別由電阻分壓器和電流互感器和錳銅分流器取樣,取樣信號送入計量芯片STPM01,由STPM01對信號進行采樣并轉換為數字信號,再經過相位校正,計算出電能、電流、電壓等數據,STPM01自動選擇電流較大的通道計算電能。這些數據通過SPI接口傳送給LPC9401。
LPC9401讀取計量芯片數據后,完成電能的累計、存儲和顯示,并輸出電能脈沖,實時檢測電表工作狀態,記錄所發生的竊電事件,給出竊電指示信號。通過紅外通訊模塊實現對電表數據抄讀和設置,電源模塊為整個系統提供工作電源,電源掉電后,單片機關閉液晶顯示,進入完全掉電模式,將功耗降到最低,僅由后備電池維持單片機內部RTC運行。
P89LPC9401資源十分豐富,具有多種總線接口。其SPI接口用于連接STPM01,I2C接口用于LCD顯示和EEPROM數據存貯,UART接口用于紅外通信,外部中斷1用于掉電檢測。為降低成本,采用內部RTC為事件記錄提供時標,CPU時鐘源也采用內部的RC振蕩器,通過DIVM寄存器2分頻將CPU時鐘調整為3.686MHz,以降低系統功耗。采用內部和外部雙看門狗的設計,提供系統可靠性。內部看門狗使用獨立振蕩器,將STPM01設置為外部看門狗,其看門狗復位信號連接到LPC9401的鍵盤中斷口。
STPM01與P89LPC9401接口設計
STPM01的SPI接口是一個兩線口,其數據輸入輸出是同一個管腳,與標準三線SPI口不同。我們采用了圖3所示方法連接兩芯片。
作為SPI總線主機,LPC9401輸出時鐘信號,STPM01依照SCLNLC的時鐘信號進行通信。為提高抗干擾性能,在連線中串聯一個10~100Ω 電阻,該電阻與芯片管腳輸入電容構成低通濾波器,濾除連線上的干擾。LPC9401讀取STPM01數據時,使用片上的SPI模塊。而向STPM01寫數據時,不使用SPI總線控制模塊,而采用軟件模擬SPI時序輸出數據。這樣設計是考慮到電表運行時,LPC9401很少向STPM01寫數據,而讀數據非常頻繁。這種設計充分利用了芯片的資源,提高了程序運行效率。
取樣電路設計
電壓取樣采用電阻分壓,考慮到貼片電阻的耐壓有限,選用4只200kΩ電阻做分壓器。STPM01電壓通道最大輸入差分電壓為±0.3V,對于50Hz交流電,對應有效值為0.21VRMS,輸入信號不能大于此最大值,否則會出現削峰。考慮到余量,對于220V額定電壓,我們取0.16VRMS,則
取樣電阻=200×4×0.16/220=581Ω,我們選560Ω作為取樣電阻。
相電流傳感器我們采用互感器,變比為5,000:1。該通道增益設置為8,則輸入最大信號為0.105VRMS,考慮到一定余量,在40A時,輸入信號選擇在0.08VRMS左右,則互感器負載電阻為0.08/40×5,000=10Ω。
零線電流通道我們采用錳銅分流器,分流器阻值取250μΩ。阻值不能取得過大或過小,如果選得過小,則在小電流時取樣信號太微弱,導致誤差增大,容易超差。如果選得過大,則大電流時分流器發熱過大,造成誤差不穩定。
圖3:SPI接口示意圖。
對于250μΩ分流器,在40A時其兩端電壓信號為250×40=10,000μV,即10mVRMS。取樣信號非常小,所以該通道增益應設置為最大即32倍,此時信號輸入最大幅度為26.25mVRMS。實際最大輸入信號小于允許的最大輸入信號,分流器阻值選擇合理。
電源電路設計
電源模塊由主電源和副電源組成,主電源在電壓線路電壓存在時工作。當電壓消失,而電流線路有電流時,副電源為系統提供電源,此時電表按照設定方式計量電能。
STPM01工作電壓為3.0~5.5V,LPC9401工作電壓為2.4~3.6V,考慮到功耗和余量,系統工作電壓設計為3.3V。主電源我們采用線性電源,220V交流電經變壓、整流、濾波和穩壓后得到3.3V電源。對于副電源,首先由一個電流-電壓感應器將電流線路的電流通過電磁感應轉換為交流電壓,當火線和零線中的電流大小相等方向相反時,感應器無電壓輸出,否則會輸出一定幅度的電壓,此電壓經整流、濾波和穩壓后得到3.3V電源。
軟件設計
電表軟件采用模塊化設計,主要包括以下幾個子程序:電能計量子程序、顯示子程序、日歷子程序、掉電處理子程序、通訊子程序等。
? 這里主要介紹一下電能計量子程序。電表上電后,主程序進行初始化,寫入STPM01配置參數,設定定時時間以定時調用電能計量子程序。計量子程序讀取測量數據和狀態,計算出電量值并輸出電能脈沖。主電源失電后,若從STPM01讀取得電流值不為零,則認為電表處于單線計量的竊電狀態,此時以額定電壓計算電量。定時讀取STPM01的時間,應滿足在最大電流時,電能寄存器不發生溢出,并考慮一定過載余量。由于啟用了STPM01的看門狗功能,如果1.6s內沒有對STPM01進行讀/寫,STPM01就會輸出看門狗信號,使MCU產生中斷。因此,定時讀取時間最長不能超過1.6s。
?
圖4:電能計量子程序流程圖。
防竊電功能
本方案設計的電表,可以防止以下幾種竊電行為。
1. 進出線反接:即負載端和電網端接線對調,此時測得的電能為負值。此時對于普通機械式電表,其計度器將反轉,導致讀數減少,而本表仍按正向累計電量;
2. 進出線旁路:即相線或零線的進線和出線被旁路,此時普通電表會少計旁路電能,本表則能準確計量實際耗電;
3. 相零對調:即相線與零線對調,本表仍能準確計量電能;
4. 負載接地:即負載只接相線,而將零線接入大地,本表仍能準確計量電能;
5. 相零對調并且負載接地:此時普通電表不計電能,而本表能準確計量電能;
6. 單線計量:即在入線側將零線斷開,負載接出線側相線,另一端接地。此時普通電表不能工作,無法計量電能,本表在負載電流達到2A以上時,可以計量電能,并且精度可以達到1%以上。
以上各種手法組合使用時,本表也能達到防竊電目的。
本文小結
本設計采用STPM01作為核心計量芯片,P89LPC9401作為系統控制器,整個系統功耗低,性能穩定。整表功能強大,精度高,動態范圍大,誤差穩定。如果提高電流-電壓感應器的轉換效率,并努力降低系統功耗,則單線計量啟動電流可以進一步降低,有希望做到1A以下,防竊電效果會更理想
評論
查看更多