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