1 引言
隨著國民經(jīng)濟的發(fā)展,企業(yè)和個人的用電量大幅提高?,F(xiàn)在用戶的用電時間比較集中,以致電力系統(tǒng)的負荷曲線變化很大。為了調(diào)整負荷曲線,充分利用發(fā)、供電設(shè)備容量,需要實現(xiàn)電價分時計費。復(fù)費率電能表就是按照高峰、低谷時間分別記錄用電量,以便按不同的價格收取電費,鼓勵用戶主動采取避峰填谷的措施,以利于供電、用電雙方。同時具有GPRS遠程抄表、微機集中抄表、停電抄表、防盜電、計量有功無功電能和測量需量等功能的多功能電表可以代替幾塊表的功能,既節(jié)約了資金又減少了設(shè)備占用的面積,而且還降低了抄表的成本。本文基于TI公司的MSP430F449高性能單片機給出了一個多功能復(fù)費率三相電能表的解決方案。
2 系統(tǒng)總體結(jié)構(gòu)和功能說明
整個系統(tǒng)分為兩大模塊,電能計量模塊,電能數(shù)據(jù)處理及通訊模塊。電能計量模塊通過電能計量專用芯片采集有功無功電能、三相電壓電流值、頻率和功率因素等數(shù)據(jù)。然后,將采集到的數(shù)據(jù)通過專用數(shù)據(jù)總線傳送到電能數(shù)據(jù)處理模塊。電能數(shù)據(jù)處理模塊將電能數(shù)據(jù)處理后存儲到flash芯片中,同時可以在液晶上實時顯示電能數(shù)據(jù)。需要抄表時,本系統(tǒng)提供三種通訊方式:紅外、RS485和GPRS;從而可采用三種方式進行抄表:掌機抄表、微機集中抄表以及GPRS遠程抄表。系統(tǒng)結(jié)構(gòu)圖如下圖所示:
3 系統(tǒng)硬件電路設(shè)計
3.1 單片機MSP430F449簡介
本系統(tǒng)中采用了TI公司的16位超低功耗高性能單片機MSP430F449,它具有64K Flash,2048Byte RAM,8通道12位高速A/D,兩個UART通訊端口,同時它的內(nèi)部集成有160段LCD液晶控制器,使得液晶硬件電路可以大為簡化。MSP430F449在待機模式下耗電僅 為0.8μA,RAM保持模式低至0.1μA,運行時功耗為225μA/MIPS,僅需1μS時鐘啟動。MSP430F449的供電電壓為1.8V ~ 3.6V,因此只需要一節(jié)鋰電池就可以正常運行。
3.2 電能計量電路設(shè)計
電能計量電路的核心采用了深圳炬力公司的ATT7022電能計量專用芯片。它是一顆高精度三相電能專用計量芯片,適用于三相三線和三相四線應(yīng)用。它能夠測量各相以及合相的有功功率、無功功率、視在功率、有功能量以及無功能量,同時還能測量各相電流、電壓有效值、功率因數(shù)、頻率等參數(shù),充分滿足三相復(fù)費率多功能電能表的需求。ATT7022提供一個SPI接口,方便與外部MCU之間進行電能數(shù)據(jù)和校表參數(shù)的傳遞。而且作為國產(chǎn)的芯片在價格上也較為低廉,在滿足設(shè)計要求的同時可以大大降低產(chǎn)品的生產(chǎn)成本。
電能計量電路如下圖所示:
上圖中介紹了A相的接法電路,B相和C相的電路與A相的電路相同。為了保證ATT7022有穩(wěn)定的電壓參考源,采用了TL431作為其外部電壓基準。由于ATT7022的供電電壓為5V,而單片機系統(tǒng)的供電電壓為3V,所以兩個模塊之間的通訊需要進行電平轉(zhuǎn)換才能正常交換數(shù)據(jù),因此設(shè)計中采用了簡單的電阻分壓電路來達到電平轉(zhuǎn)換的目的,經(jīng)過測試后發(fā)現(xiàn)數(shù)據(jù)傳輸很穩(wěn)定,未發(fā)生數(shù)據(jù)丟失的現(xiàn)象。
3.3 時鐘電路設(shè)計
為了滿足在不同的時段精確計算需量和費率的要求,復(fù)費率電表中需要具有精準可靠的實時時鐘。但MSP430F449內(nèi)部RTC時鐘不夠精確,因此在系統(tǒng)中我們采用了MAXIM公司的時鐘芯片DS3231。DS3231是低成本、高精度I2C實時時鐘,具有溫度補償晶體振蕩器和晶體。該芯片中包含電池輸入端,斷開主電源時仍可保持精確的計時。集成晶體振蕩器提高了芯片的長期精確度,并減少了生產(chǎn)線的元件數(shù)量。在工業(yè)溫度范圍內(nèi)其精度可達到±3.5ppm。
DS3231的INT端口向單片機可以提供周期為1s的中斷信號,單片機系統(tǒng)將根據(jù)該信號通過I2C通訊接口讀取具體的時間日期數(shù)據(jù),從而實時地計算出需量和各個時段的費率。另外,DS3231的32KHZ端口可以提供精確的32KHZ的脈沖信號,可以用來接受電力部門的相關(guān)實驗測試。當停電時,時鐘電路的備用電池將保證時鐘芯片能夠繼續(xù)精確計時直至供電恢復(fù)。
3.4 通訊模塊設(shè)計
本設(shè)計中主要采用了三種通訊方式來實現(xiàn)抄表功能,分別是:RS-485,紅外傳輸和GPRS方式。
考慮到電能表會安裝在戶外,因此需要在RS-485總線接口上加上避雷的保護措施。我們采用的RS-485接口芯片是TI公司的SN65LBC184芯片,通過光耦NEC2501和單片機系統(tǒng)進行隔離,從而防止遭遇雷擊時,對整個系統(tǒng)造成破壞。
紅外通信時如果直接將數(shù)據(jù)通過紅外發(fā)射管進行傳輸時,將會嚴重受到外界環(huán)境的干擾,常見的抗干擾方法是將需要傳輸?shù)臄?shù)據(jù)調(diào)制到30KHz~40KHz的載波上再進行發(fā)送。
MSP430F449單片機的管腳P1.5/ACLK可作為系統(tǒng)的低頻輔助時鐘輸出口,可通過通用的32.768KHz時鐘晶振直接驅(qū)動,無須采用額外的外部元件。利用P1.5驅(qū)動三極管產(chǎn)生頻率為32.768KHz的載波。通過單片機的UART口的TXD腳驅(qū)動另一個串聯(lián)的三極管進行二進制數(shù)據(jù)信號“0”和“1”的傳輸,從而達到紅外數(shù)據(jù)發(fā)送的功能。在紅外接收部分,利用紅外一體化接收模塊TSOP1838解調(diào)高頻紅外信號。當TSOP1838接收到高頻紅外信號時,接收管輸出低電平;當TSOP1838沒有接收到高頻信號時,接收管將輸出高電平。經(jīng)接收管紅外解調(diào)后的數(shù)據(jù)通過UART口的RXD管腳輸入單片機進行相應(yīng)的處理。
另外一種抄表方式是通過GPRS模塊遠程抄表。本設(shè)計中采用的GPRS模塊為SonyEricsson公司的GR47模塊。GR47是帶有GSM/GPRS全套語音和數(shù)據(jù)功能的先進無線模塊,具有體積小,功能全面的特點。它內(nèi)嵌TCP/IP協(xié)議棧,從而可以最大程度的縮短GPRS產(chǎn)品的研發(fā)周期。GR47提供了3個UART端口用來和MCU進行通訊,因此可以通過MSP430F449的另一個UART端口對GR47模塊進行控制,其控制命令為標準的AT指令。通過GPRS抄表可以方便地獲得各個電能表中的數(shù)據(jù),同時也可以對電能表進行廣播校時。需要指出的是,GR47的峰值耗電電流為2A,所以需要在GR47的供電端加上1000uF左右的電解電容,電源芯片也應(yīng)滿足相應(yīng)的要求,在本設(shè)計中采用了LM1084穩(wěn)壓芯片,它可以提供高達5A的輸出電流。
3.5 停電抄表電路設(shè)計
本系統(tǒng)中的電源模塊為開關(guān)電源,因此當一相或者兩相交流電斷相時,開關(guān)電源仍能向系統(tǒng)供電。但如果三相交流電全部斷相時,系統(tǒng)的供電將會中斷,因此需要考慮在停電后仍能抄表,同時要能對停電發(fā)生的時間進行記錄。為了保證停電時,系統(tǒng)的核心部分仍能正常運行,我們采用了3.6V鋰電池配合低功耗穩(wěn)壓芯片RH5RL30AA作為系統(tǒng)的后備電源,此外,在停電時單片機處于休眠狀態(tài),其他芯片的電源都通過三極管關(guān)斷以降低功耗,經(jīng)過測試,整個系統(tǒng)在休眠狀態(tài)耗電電流小于10uA。當需要停電抄表時,系統(tǒng)可以通過按鍵中斷喚醒,數(shù)據(jù)將會顯示在液晶上以供抄表。
停電時是用電池作為電源,而正常供電時是使用開關(guān)電源作為電源。如何在電池供電和開關(guān)電源供電兩者之間切換,這是一個需要考慮的問題,下面給出一個簡單的方法來解決這一問題。開關(guān)電源供電電路經(jīng)過穩(wěn)壓芯片穩(wěn)壓到3.3V左右,而電池供電電路經(jīng)過穩(wěn)壓芯片穩(wěn)壓到3V左右,在兩個電路的輸出端都加上肖特基二極管5819,這樣在正常供電時,由于開關(guān)電源供電電路的輸出比電池供電電路高0.3V,電池供電電路由于5819的反向不可導(dǎo)通將被切斷供電;而在停電時,開關(guān)電源供電電路輸出為0,電池供電電路在5819正向?qū)ê髮⑾蛳到y(tǒng)供電。電源切換電路如下圖所示:
在正常供電時,鋰電池的電壓可以由MSP430F449內(nèi)部的12位A/D采樣獲得,這樣當電池電壓低于3.3V時,可以通過電池充電電路對其充電,直到電池電壓上升到達到鋰電池充電限制電壓4.2V時再停止充電。電池充電電路可以通過單片機IO口控制三極管開斷穩(wěn)壓芯片輸出來實現(xiàn)。
4 系統(tǒng)軟件設(shè)計
下面介紹系統(tǒng)功能的軟件實現(xiàn):
1)初始化:對LCD、存儲器進行自檢,并對數(shù)據(jù)進行初始化,若系統(tǒng)為第一次上電,所有數(shù)據(jù)都將初始化為0,否則將從存儲器讀取相應(yīng)值對數(shù)據(jù)進行初始化。
2)時間模塊:根據(jù)DS3231提供的時間脈沖進行時間計量,為系統(tǒng)數(shù)據(jù)處理模塊提供時間度量并且為用戶提供當前時間顯示。
3)數(shù)據(jù)處理模塊:本模塊為軟件設(shè)計的核心,主要作用是將計量芯片提供的有功無功電能、三相電壓電流值、頻率和功率因素等數(shù)據(jù)進行處理,結(jié)合當前時段和費率,得到用戶的各費率各時段實際用電量以及最大需量等,并在某一指定時刻(可設(shè)置)將數(shù)據(jù)保存到存儲器中。本電表可以保存多月數(shù)據(jù),并能夠通過RS485、紅外接口和GPRS模塊向抄表系統(tǒng)提供任意當前或已保存數(shù)據(jù)。本模塊還具有記錄斷相時間、斷流時間等功能。
4)校表模塊:為了匹配各種不同的外設(shè),ATT7022提供了校表功能。本模塊用于對ATT7022內(nèi)部各校表寄存器進行設(shè)置使其與外設(shè)匹配以增加測量精確度。
5)顯示模塊:通過LCD顯示時間、四象限有功無功電能、三相電壓電流值、頻率、功率因素、各時段各費率用電量以及最大需量等。并可通過按鈕對顯示界面進行操作。
6)停電處理模塊:停電時系統(tǒng)不訪問數(shù)據(jù)處理模塊,整個系統(tǒng)將進入休眠狀態(tài),從而使系統(tǒng)處于超低功耗模式,通過按鍵中斷可以將系統(tǒng)喚醒。
7) 通訊模塊:通訊模塊分為紅外、RS485和GPRS通訊。
8)中斷處理模塊:系統(tǒng)主要有三個中斷處理模塊,分別為定時、通訊和停電中斷。
5 結(jié)束語
基于MSP430F449單片機的多功能復(fù)費率三相電能表集成了多種功能,在電能計量芯片ATT7022和時鐘芯片DS3231的配合下對于電能的計量可以達到很高的精度。由于通過多種方式降低系統(tǒng)功耗,經(jīng)過測試,在停電時整個系統(tǒng)的功耗極低,從而保證了停電抄表功能的實現(xiàn)。整個系統(tǒng)的生產(chǎn)成本較低,并且各項技術(shù)指標都達到了國內(nèi)關(guān)于三相復(fù)費率電能表的技術(shù)標準,因此具有良好的市場前景和應(yīng)用價值。
本文作者創(chuàng)新點:采用了ATT7022計量芯片和高精度時鐘芯片DS3231提高測量精度和降低成本,增加了停電抄表功能使停電后能及時可靠地抄表,還增加了GPRS和紅外兩種遠程抄表方式,抄表方式靈活多樣,并且從硬件和軟件上綜合考慮來使系統(tǒng)功耗降至最低。