步驟1:項目范圍分析
簡介
鑒于電力成本的不斷上漲以及旨在減少一般用電量的全球變暖運動,人們對分析家庭用電量的興趣日益濃厚。通過分別分析每個電器的用電量,可以得出有關其效率和更換需求的更準確的結論。此外,這還可以確定設備在關閉時是否正在消耗大量電能,以及是否應該拔掉電源。這樣可以減少電力消耗和成本。
問題說明
當前安裝在家庭中的大多數傳統預付費電表僅顯示實時總使用量的電量和可用電量。無法查看這些電表的日,周或月消耗量,并且這些電表通常放置在不方便的位置,這使得定期查看變得有些困難。這些功率計還缺乏單獨監視設備的能力。因此,隱藏了有關單個電器的重要信息。
項目目標和范圍
需要一個智能電表系統,該系統可以分析家庭中的多個電器以獲取諸如如電壓,電流,有功功率,視在功率,無功功率,功率因數和頻率。借助有線/無線連接,設備可以連接到中央網關,并且網關管理系統可以上載和處理收集的信息。然后,數據可以顯示在平臺的基于android的圖形用戶界面上。該平臺允許用戶從任何啟用Android的設備訪問數據。為了降低成本,系統需要能量計量節點,該能量計量節點可以通過網關以無線方式或有線方式與網關通信,這樣對于包含許多受監視設備的家庭來說,僅需要一個Wi-Fi接入點。此外,還要求關于電器的當前信息也可以通過菜單界面在本地顯示器上查看。如果滿足以下條件,則遠程電能計量節點將被視為成功:
?節點與網關之間的有線/無線通信
?正確測量電壓,電流和功率
?網關上具有顯示和菜單的工作用戶界面
?網關和遠程儀表節點之間可靠的有線/無線通信。
如果時間允許,可能會添加以下附加功能以改進項目,請記住,省略這些功能不會影響操作:
?建立安全的機械結構來包裝網關站
?建立安全的機械結構以隔離能量計量節點
?在設備關閉時提高設備的電源效率并最小化功耗
智能電表和智能電表系統
智能電表是公用事業用于交流信息的電子測量設備為客戶開帳單并操作其電氣系統。十五年來,電表已被公用事業公司有效地用于為其至少一部分客戶群提供準確的賬單數據。
最初,由于技術原因,該技術已應用于商業和工業客戶對更復雜的費率和更精細的計費數據需求的需求。電子表的使用已為公用事業的最大客戶服務,并隨著時間的流逝逐漸擴展到所有客戶類別。通過降低技術成本和所有客戶類別的高級計費要求,可以實現這種遷移。電子儀表與用于信息,監視和控制的雙向通信技術的結合通常被稱為高級儀表基礎架構(AMI)。利用單向通信收集電表數據的先前系統稱為AMR(自動電表讀取)系統。 AMI已隨著時間的流逝而發展,從最初的抄表替代品(AMR)到如今的雙向通訊和數據系統。
盡管智能電表在公用事業行業中相對較新,但它們卻受到與電子電表和較舊的機電產品相同的盡職調查和審查。這些儀表在儀表精度和設計上一直達到或超過國家標準,例如美國國家標準協會(ANSI)C12.1。此外,用于認證儀表性能的設備必須可追溯到美國國家標準技術研究院(NIST),這是與行業合作以正確應用技術和測量的聯邦機構。智能電表安裝使用的其他標準包括用于家庭電氣布線的國家電氣法規(NEC),用于外殼和設備的國家電氣制造商協會(NEMA)和Underwriters Laboratories(UL),以及用于公用設施布線的國家電氣安全法規(NESC) 。通過公用事業計量專業人士和計量制造商的領導,這些固態電子測量設備的精心開發使得計量表產品具有先進的功能,穩定的精度和更嚴格的精度公差,并且比先進的功能更具成本效益。
步驟2:系統設計簡介
系統由三個主要部分組成。網關,能源節點和android應用程序界面。下面的圖1顯示了這些部分之間如何相互作用。
能量計量節點
能量節點單元負責在請求時進行功率測量然后將它們發送到網關。它等待通過UART(有線連接)從網關發出的請求。收到請求后,它會從EMIC讀取測量值,然后將此信息發送回網關。
網關單元
網關負責收集數據,然后將其發送到android應用程序界面。它還具有控制臺訪問權限,可以顯示所有相關信息以及一個小的界面。通過有線通信從能量節點請求信息。然后,能量節點將信息發送回網關。然后,網關將此信息轉發到android應用程序界面。此過程以固定的間隔進行,可以在菜單界面中進行設置。因為網關和能量節點是分開的,所以單個系統可以包含許多能量節點。這樣做的優點是,由于僅需要購買能源節點,因此監視其他附加設備的成本較低。
Android應用程序界面
設計了android應用程序,該應用程序負責讀取每個連接的能源節點的網關,還負責設置各種網關配置和參數(例如各種閾值等)。
步驟3:能源節點設計簡介
能量節點單元負責讀取EMIC的測量值,并在收到網關請求后中繼此信息。能量節點單元由三個主要部分組成–能量測量IC本身,感測電路和隔離電路。能源節點的設計方式使其可以通過電線直接連接到基站,以作為獨立系統運行。
能源測量前端(EMIC)
來自cirrus邏輯的CS5490用作能量測量的前端。從文獻回顧中可以明顯看出,一種簡單的功率測量方法是使用EMIC,因為不需要進一步的計算,也不需要考慮其他任何因素。僅需要設置和校準EMIC,然后可以讀取寄存器以獲取相關信息。正在考慮一些EMIC,例如微芯片的MCP3903。它使用SPI通信,共有8個專用于通信的引腳(SCK,SDO,SDI,CS,復位和3個數據就緒線)。大多數EMIC使用SPI通信。然而,最引人注目的邏輯芯片是CIRRUS LOGIC的CS5490。它使用UART進行通信,并且似乎比其他EMIC更強大。該IC具有的一些功能包括:
?能量測量精度為0.1%
?支持分流電阻和CT
?片上測量/計算:
–有功,無功和視在功率
– RMS電壓和電流
–功率因數和線路頻率
–瞬時電壓,電流和功率
?過電流,電壓驟降和電壓驟升檢測
?超快速片上數字校準
?UART串行接口
?片上溫度傳感器
?3.3 V單電源
?低功耗:13 mW
CS5490集成了獨立的四階Delta-Sigma模數轉換器,用于通道,參考電路和成熟的EXL信號處理內核,可提供有功,無功和視在能量測量。此外,RMS和功率因數計算可用。計算結果通過可配置的能量脈沖輸出,或直接通過UART串行訪問片上寄存器。串行端口上還提供瞬時電流,電壓和功率測量。兩線制UART可在需要時最大程度地降低隔離成本。
CS5940總共僅需要3個引腳來接收,接收和復位。 EMIC通常連接到電源以獲取電壓讀數,因此需要將IC與與其通信的微處理器隔離。該項目中使用光耦合器在網關(Beaglebone黑色)和IC之間建立隔離連接。光耦合器在使用光傳輸數據時可以將兩個電路彼此隔離,并且其光敏晶體管全部封裝在一個小封裝中。方便的是,它還可以用作電平轉換器,因為Beaglebone black在3.3V電壓下工作,某些部件在5V邏輯下工作,而電能計量IC僅在3.3V邏輯下解決了一個設備的兩個問題。
可配置的數字輸出提供能量脈沖,過零,能量方向或中斷功能。在各種情況下都可能產生中斷,包括電壓驟降或驟升,過電流等等。通過校驗和和寫保護來確保片上寄存器的完整性。 CS5490旨在與各種電壓和電流傳感器接口,包括分流電阻器,電流互感器和Rogowski線圈。
EMIC確實需要一些電路來進行測量。為了進行電壓測量,在兩根線之間使用了一個分壓器,為了進行電流測量,使用了一個分流電阻器。該IC在電壓測量和電流測量輸入上的最大峰峰值為250mV,因此CT或并聯電阻和分壓器的選擇必須使最大值不會達到最大值,否則IC會斷裂
第4步:能量節點電路說明
選擇了并聯電阻,因為它比霍爾效應傳感器更穩定。并且比電流互感器小。分流電阻器必須處于這樣的范圍內:如果從設備汲取最大允許電流,則分流電阻器上的電壓降峰峰值之間小于250mV,因為這是EMIC的最大電流電壓輸入。
Vmax = Imax * Rshunt
因此,Rshunt = Vmax/Imax
選擇Imax為17A,Vmax為250mV
R = 10mΩ
因此此處將使用一個小于10mΩ的并聯電阻。 EMIC具有50倍的內部可調增益,因此可以使用更小的分流電阻器,并且還具有減小電阻器功耗的優勢。
高壓交流線路通過分壓器進行衰減。傳感器由1.76Mohm和1Kohm電阻組成,然后提供給CS5490電壓通道輸入。分壓比取決于CS5490電壓通道的最大輸入范圍(176mVRMS)和最大線路電壓。分壓比由下面的公式確定。
Vout = Vin *(R2/(R1 + R2))《176mV RMS
對于線路電壓,Vin = 260 Vrms,并且R2 = 1K,則可以求解R1。參見下面的公式:
R1 = [1000 * {(260V/176mV)– 1}] = 1.47Mohm
給出120%的裕度,為了選擇公共電阻值,選擇了R1 = 120%* 1.47M = 1.76Mohm電阻。電壓檢測電阻(R2)的參考電位必須與電流傳感器和CS5490電源(位于線路或中性線)相同。
微處理器和繼電器電路的邏輯電平為3.3 V和5V,而EMIC具有3.3V邏輯電平,因此需要一個電平轉換器。此外,電能計量IC連接到電源,但是必須將微處理器芯片與電源隔離,因為來自電源的噪聲會損壞微處理器,尤其是其他組件的可靠性。因此,需要一種能夠同時進行隔離和電平轉換的設備。幸運的是,光耦合器可以做到這一點。當光耦合器中的一個信號傳輸到它時,它的光源就會打開。該光源激活連接接收側兩端的晶體管。光耦合器的選擇主要是由于可用性和尺寸。另一個重要因素是在光耦合器之間傳輸信號的上升和下降時間。
EMIC的默認波特率設置為600。由于波特率非常低,因此光耦合器可以處于微秒范圍。該項目的光耦合器是MCT2E。它的上升和下降時間分別為3和4 us,因此以600的波特率可靠地通信是可以接受的。還選擇它的原因是它易于獲得并且具有僅6針的小型封裝。
步驟5:EMIC校準,縮放和補償
電表是配電網絡的一部分,用于測量電力消耗。在配電網中使用電表要求電表適應各種配置。這取決于配電網的一部分以及安裝了電表的最終用戶的類型。這些配置包括廣泛的電壓和電流范圍,根據規格,電表應能正常工作。上述要求要求計量引擎具有適應性,以便根據規格可選擇轉換輸入信號的換能器,同時仍記錄輸入線路信號的實際值。
電表設計是由許多組件組成,由于電表設計中的各種因素,其特性可能會有所不同。構成電路一部分的組件包括:
?用作電流傳感器的電流互感器(CT)或分流器
?用作電壓傳感器的電阻分壓器
?電阻器
?電容器
?電感器
這些特性的變化會影響測量信號,可能會導致
偏移增加,幅度改變和信號相位變化。考慮到以上所有因素,需要進行標準值校準以實現儀表輸出。校準是將線路參數設置為已知值,并計算各種信號調節參數(例如增益,偏移補償和相位補償因子)的過程。
校準在CS5490中是獨立的,并且所有計算均由器件執行,并存儲在內部寄存器中。補償要求MCU執行一些計算,然后將結果存儲回CS5490寄存器。由于CS5490沒有非易失性存儲器(NVM),因此必須將永久性的校準和補償存儲放在MCU NVM中,并在任何AFE復位條件后重新加載。通常,每次校準和補償都需要執行以下步驟:
?1.配置CS5490的初始條件
?2.將模擬輸入與來自精確源的激勵相結合
》
?3.啟用所需的校準
?4.執行校準
?5.讀取結果
?6.計算新寄存器補償值
?7.將結果存儲在AFE和NVM中
通常同時執行校準和補償。例如,由于AC增益校準和相位補償需要將類似的輸入信號施加到電流和電壓通道,因此校準和補償是同時執行的。
1。正常操作過程(在現場每次復位時執行)
以下過程概述了將儀表置于正常操作模式所需的步驟。圖2.3顯示了現場常規操作的簡化流程圖。
1。重置CS5490。
2。恢復配置和控制寄存器。
3。從非易失性存儲器中恢復VGAIN和IGAIN寄存器。
4。如果需要,請從NVM恢復偏移量寄存器。
5。如果需要,請從NVM恢復相位補償寄存器。
6。如果需要,請從NVM恢復空載補償到POFF和QOFF寄存器。
7。將單個轉換命令發送到CS5490。
8。確認寄存器校驗和有效,或返回到步驟1。
9。將連續轉換命令發送到CS5490。
10。啟用并清除DRDY。
11。投票DRDY。
12。如果設置了DRDY,請清除DRDY。
13。讀取IRMS,VRMS和PAVG。通過以下方法將IRMS,VRMS和PAVG縮放回真實值:
安培= Full_Scale_Current *(IRMS/0.6)
電壓= Full_Scale_Voltage *(VRMS/0.6)
瓦數= Full_Scale_Power *(PAVG/0.36)
14。循環回到“輪詢DRDY”步驟。
2。完整的校準和補償過程(執行一次)
以下過程顯示了執行校準和補償所需的步驟。圖2.4顯示了完整校準過程的流程圖。
圖2.4主要校準過程
1。接通CS5490設備的電源。
2。重置CS5490設備。
3。驗證寄存器校驗和以確認重置成功。
4。恢復配置和控制寄存器。
5。將參考線電壓和負載電流連接到電表,電流相滯后角為60o。
6。如果參考負載電流不是滿負載,則將比例寄存器設置為0.6 x 223x參考負載電流÷滿量程電流的比率。如果參考線電壓低于最大線電壓,請參閱非滿量程增益校準。
7。連續轉換(0xD5命令)2秒鐘。
8。停止連續轉換(0xD8指令)。
9。讀取IRMS,VRMS,PAVG和PF,并通過驗證IRMS,VRMS,PAVG和PF是否在合理范圍內來確認參考電壓和電流信號是否正確連接。
10。清除DRDY狀態位。
11。將交流增益校準命令(0xFE)發送到CS5490。
12。等待設置DRDY。
13。如果需要,請執行相位補償,交流偏移校準和功率偏移校正。
14。發送連續轉換(0xD8命令)。
15。驗證測量精度。如果精度不在規格范圍內,請檢查設置或使儀表失靈。
16。讀取VGAIN,IGAIN,IACOFF,POFF,QOFF,PC,然后注冊校驗和并將其保存到閃存/EEPROM中。
17。校準完成。
3。系統縮放比例
硬件縮放比例:CS5490輸入使用衰減電路進行縮放,衰減電路的最大輸入幅度為176mVRMS或35mVRMS,這取決于AFE增益設置為增益分別為10倍或50倍。
AFE刻度: AFE寄存器記錄輸入電平,這些電平顯示為最新測量值與最大RMS電壓和RMS電流的比率。 。 RMS寄存器的最大值使用0.6的比率生成。寄存器值讀取為24位十六進制數字,該數字按比例表示0.6VRMS滿量程。在最大電壓(0.6)和最大電流(0.6)時,最大功率為PMAX = VRMSMAX×IRMSMAX = 0.6×0.6 = 0.36。
MCU比例尺:讀取所有寄存器并根據滿載條件解釋24位十六進制數。知道最大硬件縮放比例和與滿量程輸入有關的最新AFE寄存器值后,MCU例程便能夠計算實際功率測量值。
步驟6:網關設計
網關負責收集數據,然后將其發送到android應用程序界面。它還具有控制臺訪問權限,可以顯示所有相關信息以及一個小的界面。通過有線通信從能量節點請求信息。然后,能量節點將信息發送回網關。然后,網關將此信息轉發到android應用程序界面。此過程以固定的間隔進行,可以在菜單界面中進行設置。因為網關和能量節點是分開的,所以單個系統可以包含許多能量節點。這樣做的好處是,由于只需要購買能源節點,因此監視其他附加設備的成本較低。
網關的應用程序完全使用C語言設計。該應用程序的流程圖如右圖所示。該應用程序使用“ sys”文件系統初始化Beaglebone黑板的GPIO引腳開始。然后設置GPIO引腳的方向以適應該引腳上使用的功能。例如,選擇連接繼電器的引腳作為輸出,而選擇連接開關的引腳作為輸入。
在GPIO引腳初始化之后,我們打開了兩個串行端口節點。在Linux文件系統中以“/dev/ttyOx”訪問,其中x是UART號。這兩個串行端口是我們的電能計量節點使用UART直接連接的端口。因此,只有在打開這些端口之后,我們才能訪問這些端口。之后,我們閱讀串行端口的先前配置,并設置一個新的端口以匹配我們的EMIC功能。成功設置串行端口后,我們將校準常數加載到兩個EMIC板上,從而初始化兩個CS5490 EMIC,準備進行能量測量。
成功加載校準常數后,我們設置了一個信號處理程序,用于緊急停止網關服務器應用程序。在這里,我們對資源進行了所有的明智分配,例如服務器文件描述符,串行端口以及我們在應用程序中使用的所有資源。
由于網關還負責將電表讀數存儲在數據庫中,因此我們使用sqlite數據庫,用于以結構化格式存儲儀表的讀數。初始化信號處理程序后,我們打開/創建名為“ METERx”的對應儀表的數據庫文件,其中x是儀表編號。如果數據庫文件最初不存在,則創建該文件,否則將其打開。現在,以“ month_year”格式創建/打開對應月份和年份的表。對于新的月份/年份,應用程序會自動在數據庫中創建相應的表。
現在要在網關應用程序中實現并行性,我們實現了三個線程,它們運行三種不同的應用程序功能。在這里,我們初始化三個線程。第一個是“計時器線程”,它負責維護程序中的參考時間延遲,以定期更新數據庫和用于儀表讀數的用戶界面。下一個線程“開關輪詢線程”負責連續監視開關是否被按下,從而執行相應的負載開關功能。第三個線程“服務器線程”負責與Android客戶端應用程序創建,綁定,偵聽和維護TCP/IP連接,以進行數據更新和檢索。
為進行原型演示,我們選擇了Beaglebone black ,這是德州儀器(TI)的開發板作為網關處理器。它配備了最少的功能集,以允許用戶體驗處理器的功能,并且不打算用作完整的開發平臺,因為BeagleBone Black無法通過板載訪問處理器提供的許多功能和接口。支持某些接口。 BeagleBone Black并非旨在執行任何特定功能的完整產品。它是實驗和學習如何對處理器進行編程以及如何通過創建自己的軟件和硬件來訪問外圍設備的基礎。它還提供對許多接口的訪問,并允許使用稱為capes的附加板來添加許多不同的功能組合。用戶還可以開發自己的電路板或添加自己的電路。
電路板功能包括:
1。 AM335x 1GHzARM?Cortex-A8
3。 4GB 8位eMMC板載閃存存儲器
4。 3D圖形加速器
5。 NEON浮點加速器
連接性:
1。用于電源和通信的USB客戶端
2。 USB主機
3。以太網
4。 HDMI
5。 2個46針接頭插座
軟件兼容性:
1。 Debian的
2。的Android
3。 Ubuntu的
4。 Cloud9 IDE
步驟7:ANDRIOD應用程序設計
簡介
此應用程序將負責通過Wi-Fi從網關進行通信。首先,它將要求登錄名和密碼,以便未經授權的用戶將無法使用它。然后它會根據用戶要求發送特定數據的命令,然后以不同的形式顯示網關發送的數據。有各種用于顯示各種類型數據的按鈕,每次單擊都會發送特定命令,以便網關將識別出要從數據庫發送給用戶的數據。還提供了根據用戶需求從應用中打開和關閉電表的措施。從我們可以在電表將限制發送到網關的應用程序中設置能耗限制的角度來看,該電表很聰明,網關將在達到該限制時跟蹤能耗,并自動關閉設備。
在上圖中,我們看到啟用了Meter1,而未啟用Meter2,因此我們只能使用儀表1的按鈕;與儀表2相關的按鈕被禁用,以防止它們被意外使用。還有三個按鈕,用于發送命令以檢索當前使用情況數據,當月前幾周的數據使用情況以及前一天的數據使用情況。每個電表都有一個開關,可以將其打開和關閉,這將使電器根據我們的意愿打開/關閉。當前使用情況將顯示在同一屏幕上,并且將顯示的數據是功率,電壓,電流和能量。其他命令將導致數據以圖形的形式顯示在不同的活動上。文本框底部是設置每月消耗量的限制,下面的按鈕將顯示上個月的能耗。
為了以圖表形式顯示數據,我們使用了Achartengine庫,我們必須復制到項目的libs文件夾中,我們必須在mainfest文件中添加其圖形活動。我們之所以使用Achartengine是因為它是免費的,精簡的并且支持各種類型的圖形。
為了發送命令和接收數據,我們使用了Stream Sockets,因為在UDP套接字的情況下,數據可能會被丟失,這將導致應用程序行為異常。數據發送和接收是一個耗時的過程,因此對于每個通信,都會創建一個線程,通信將在其處理程序中進行,結果將由其在主線程中的運行狀態發布。在每個線程關閉時,其套接字也將關閉。我們還使用了一些背景圖片,需要將其復制到/bin/res/drawable-mdpi文件夾中。
-
智能家居
+關注
關注
1930文章
9613瀏覽量
186560 -
能源監控
+關注
關注
0文章
11瀏覽量
1456
發布評論請先 登錄
相關推薦
評論