張建,熊福松,喻炳政,王宜懷
(1. 蘇州大學(xué) 文正學(xué)院,江蘇 蘇州 215004;2. 蘇州大學(xué) 東吳學(xué)院,江蘇 蘇州 215006; 3. 蘇州大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,江蘇 蘇州 215006)
近些年,我國(guó)開(kāi)始研究并有限度的實(shí)施了智能電能表。智能電能表是一種具有數(shù)據(jù)顯示,并通過(guò)無(wú)線通訊方式將數(shù)據(jù)發(fā)送給供應(yīng)商的電子設(shè)備[1]。相對(duì)于只能通過(guò)人工現(xiàn)場(chǎng)讀數(shù)的電子式儀表[2],智能電能表通過(guò)如電線、衛(wèi)星通信系統(tǒng)等各種介質(zhì)自動(dòng)抄表,遠(yuǎn)程收集并處理消費(fèi)者電力使用數(shù)據(jù)[3],提供比傳統(tǒng)電能表更詳細(xì)的用電信息的一類新型電能表,這種電能表可以通過(guò)網(wǎng)絡(luò)與后臺(tái)系統(tǒng) 進(jìn)行數(shù)據(jù)交換,實(shí)現(xiàn)監(jiān)控和計(jì)費(fèi)的功能[4]。
智能電能表一般通過(guò)無(wú)線方式進(jìn)行通訊。遠(yuǎn)距離無(wú)線電(Long Range Radio, LoRa)[5]需自建基站且不適合大規(guī)模商用;4G通信費(fèi)用過(guò)高;窄帶物聯(lián)網(wǎng)[6](Narrow Band Internet of Things, NB-IoT) 是一種低成本低功耗廣域網(wǎng)技術(shù),可降低通信方面維護(hù)成本,已成為支撐用電信息采集系統(tǒng)數(shù)據(jù)采集的另一種技術(shù)方案[7]。基于NB-IoT開(kāi)發(fā)的智能儀表已有不少,如文獻(xiàn)[8-10]提出了開(kāi)發(fā)方案,但尚未建立一個(gè)開(kāi)發(fā)的架構(gòu),也沒(méi)有對(duì)采樣、傳輸、諧波等關(guān)鍵技術(shù)進(jìn)行深入研究。
當(dāng)前主要依托第三方平臺(tái)、標(biāo)準(zhǔn)進(jìn)行NB-IoT應(yīng)用開(kāi)發(fā),如:文獻(xiàn)[11-12]等物聯(lián)網(wǎng)平臺(tái),都只是提供一個(gè)封裝好的平臺(tái)接口供用戶調(diào)用,數(shù)據(jù)傳送需通過(guò)平臺(tái),收取一定的費(fèi)用,帶來(lái)了極大不便且存在一定的數(shù)據(jù)安全問(wèn)題,也不方便物聯(lián)網(wǎng)應(yīng)用開(kāi)發(fā)的調(diào)試。文中在現(xiàn)有智能電能表及NB-IoT技術(shù)基礎(chǔ)上,將復(fù)雜的NB-IoT架構(gòu)抽象簡(jiǎn)化為三部分,提出了三層架構(gòu)的AHL NB-IoT框架。窄帶物聯(lián)網(wǎng)三層架構(gòu)能直觀明了查看數(shù)據(jù)的傳送,又簡(jiǎn)化了數(shù)據(jù)收發(fā)的具體細(xì)節(jié),使得用戶更加專注應(yīng)用層的開(kāi)發(fā),提高開(kāi)發(fā)效率、降低開(kāi)發(fā)成本。
AHL NB-IoT框架分為三層,分別為具有數(shù)據(jù)采集和窄帶通信功能的終端、云服務(wù)器以及人機(jī)交互系統(tǒng)。圖1為AHL NB-IoT架構(gòu)下智能電能表系統(tǒng)的整體框架。
圖1 系統(tǒng)架構(gòu)
(1)電能表終端
電能表終端需要測(cè)量電流、電壓、功率等電網(wǎng)基本參數(shù),以及獲取當(dāng)前電網(wǎng)的諧波信息。電能表測(cè)量精度必須達(dá)到國(guó)家標(biāo)準(zhǔn)要求,且需要具有遠(yuǎn)程發(fā)送電網(wǎng)數(shù)據(jù)、本地顯示的功能。
(2)云服務(wù)器
云服務(wù)器具有偵聽(tīng)功能,可接收、轉(zhuǎn)發(fā)、解析多種格式的數(shù)據(jù)以及具有數(shù)據(jù)存儲(chǔ)、查詢功能,方便電網(wǎng)管理人員查看數(shù)據(jù)。
(3)人機(jī)交互系統(tǒng)
人機(jī)交互系統(tǒng)需要將電網(wǎng)質(zhì)量相關(guān)數(shù)據(jù)以直觀形式展示給電網(wǎng)供應(yīng)商,并對(duì)終端具有一定的控制功能,方便獲取不同類別的電網(wǎng)數(shù)據(jù)信息。
電能表終端通過(guò)SPI協(xié)議控制LCD顯示,與計(jì)量芯片進(jìn)行通信,獲取計(jì)量芯片采集到的電壓、電流、功率等電網(wǎng)數(shù)據(jù),與窄帶通信模組通信實(shí)現(xiàn)數(shù)據(jù)上傳。電能質(zhì)量采集終端主要由MCU最小系統(tǒng)及擴(kuò)展板接口電路、以HT7036計(jì)量芯片為主的外接傳感器電路、通訊模組電路等組成。
圖2為終端硬件構(gòu)件構(gòu)成圖。終端電路主要包含校準(zhǔn)電路、電壓電流采樣電路、MCU與計(jì)量芯片通訊電路和終端保護(hù)電路。校準(zhǔn)電路負(fù)責(zé)對(duì)終端進(jìn)行測(cè)試、校準(zhǔn),以保證終端測(cè)量數(shù)據(jù)的精度。
圖2 終端硬件構(gòu)成
電壓、電流采樣電路由HT7036片內(nèi)的19位ADC模塊實(shí)現(xiàn),采用雙端差分信號(hào)輸入。
采樣電路使用100 Ω電阻與100 pF電容組成低通濾波電路,濾除高于10 MHz干擾信號(hào)。
電壓采樣電路引入限壓型浪涌保護(hù)器[13],通過(guò)并聯(lián)MYN23-681K型壓敏電阻。出現(xiàn)浪涌電壓時(shí),壓敏電阻阻抗不斷減小,吸收浪涌電壓,保護(hù)終端設(shè)備[14]。在火線上串聯(lián)PTC型熱敏電阻可防止出現(xiàn)過(guò)流現(xiàn)象。PTC型熱敏電阻具有低溫導(dǎo)通特性,其阻值隨溫度升高急速增大,起到過(guò)載保護(hù)作用[15],圖3為浪涌保護(hù)電路。
圖3 浪涌保護(hù)電路
系統(tǒng)軟件部分主要由MCU配置文件、基礎(chǔ)構(gòu)件、用戶構(gòu)件、軟件構(gòu)件、邏輯控制文件五部分組成。軟件架構(gòu)的MCU配置文件、基礎(chǔ)構(gòu)件與MCU的硬件模塊密切相關(guān),改變MCU需重新編寫(xiě)。用戶構(gòu)件通過(guò)調(diào)用基礎(chǔ)構(gòu)件的函數(shù)接口,實(shí)現(xiàn)相應(yīng)的功能。在移植時(shí),保持基礎(chǔ)構(gòu)件的函數(shù)接口不變,盡可能降低構(gòu)件與MCU間耦合性。軟件構(gòu)件與具體硬件無(wú)關(guān),做到系統(tǒng)無(wú)關(guān)性,表1為系統(tǒng)軟件程序架構(gòu)。
表1 AHL NB-IoT軟件架構(gòu)
電能質(zhì)量數(shù)據(jù)主要包括電流、電壓、功率、電能、諧波等。數(shù)據(jù)采樣依賴三相電能計(jì)量芯片內(nèi)部集成的多路19位ADC模塊。物理量經(jīng)由三角積分ADC模塊、抽取濾波器模塊、有限沖擊響應(yīng)濾波器模塊處理后,得出最終的采樣數(shù)據(jù)。電流、電壓等采用均值濾波改進(jìn)算法進(jìn)行處理,使電壓誤差小于2%,電流誤差小于5%,有功功率誤差小于2%。諧波測(cè)量方面,分別使用自動(dòng)、手動(dòng)同步采樣,結(jié)合FFT算法,獲取精確的測(cè)量數(shù)據(jù)。
三相電能計(jì)量芯片HT7036的0x0D~0x0F地址分別存儲(chǔ)A、B、C三相電壓的補(bǔ)碼數(shù)據(jù),有效值寄存器的0x10~0x12地址分別存儲(chǔ)三相電流數(shù)據(jù),功率寄存器的0x01~0x03、0x05~0x07、0x09~0x0B地址分別存儲(chǔ)三相有功功率、無(wú)功功率、視在功率。能量寄存器的0x1E~0x20、0x22~0x24、0x35~0x37地址分別存儲(chǔ)三相有功電能、無(wú)功電能、視在電能。
以A相電能質(zhì)量數(shù)據(jù)處理為例,DataU從0xD地址讀出的補(bǔ)碼形式的數(shù)據(jù),A相測(cè)量電壓有效值為Urms, A相電流有效值為Irms,DataI為從0x10地址讀出的數(shù)據(jù),TA為電流互感器變比,R為電流采樣電路電阻。式(1)為采樣電壓、電流計(jì)算公式:
(1)
有功功率、無(wú)功功率、視在功率的計(jì)算方式一致。設(shè)A相有功功率為P,從功率寄存器0x01地址讀出的24位補(bǔ)碼數(shù)據(jù)為X,在計(jì)算有功功率前需確定功率系數(shù),設(shè)功率系數(shù)為K,脈沖常數(shù)為HFconst,式(2)、式(3)為K、P的計(jì)算公式。
K=2.592×1010/(HFconst×3200×223)
(2)
(3)
有功電能、無(wú)功電能、視在電能的計(jì)算方式一致。設(shè)A相有功電能為E,從能量寄存器0x1E地址讀出數(shù)據(jù)為DataE,式(4)為有功電能E的計(jì)算:
E=DataE/3200
(4)
4.2.1 加閾值防脈沖干擾均值濾波算法
電流、電壓、功率等采樣值經(jīng)由回歸處理后可得到對(duì)應(yīng)數(shù)值。均值濾波算法[16-17]較單次采樣更為合理,數(shù)據(jù)采樣中超出閾值范圍的數(shù)據(jù)參與均值運(yùn)算會(huì)影響運(yùn)算真實(shí)性,帶來(lái)不必要的誤差。針對(duì)該問(wèn)題,對(duì)均值濾波算法進(jìn)行改進(jìn),將超出值域的數(shù)據(jù)進(jìn)行剔除,以提高采樣數(shù)據(jù)的準(zhǔn)確性。以單相電壓數(shù)據(jù)采集50次數(shù)據(jù)為例,表2為加閾值防脈沖干擾均值濾波算法。
表2 加閾值防脈沖干擾均值濾波算法
實(shí)驗(yàn)表的采樣電路最大輸入電壓umax為0.5 V,增益系數(shù)φ為2,采樣電阻R1為1.2 kΩ,總電阻R為2 311.2 kΩ,由式(5),計(jì)算出實(shí)驗(yàn)表的最大測(cè)量電壓Umax為481.5 V,閾值范圍設(shè)定為Umax的3/7~4/7之間,即[206.36 275.14]。
(5)
圖4為雙實(shí)驗(yàn)表同時(shí)采樣測(cè)量電壓所得到的數(shù)據(jù),從圖4中可看出加閾值后的數(shù)據(jù)更平滑,符合表測(cè)數(shù)據(jù)。
圖4 防脈沖干擾均值算法改進(jìn)前后采集數(shù)據(jù)比對(duì)
4.2.2 改進(jìn)快速傅里葉變換算法
基于神經(jīng)網(wǎng)絡(luò)等的諧波測(cè)量算法,對(duì)內(nèi)存、芯片性能要求較高??焖俑道锶~變換算法(Fast Fourier Transform, FFT)[18-20]對(duì)電網(wǎng)諧波參數(shù)進(jìn)行估算,算法受制于頻譜泄露現(xiàn)象和柵欄效應(yīng)。頻譜泄露是指信號(hào)頻譜中各譜線之間的互相干擾,使運(yùn)算結(jié)果偏離真實(shí)值,并在真實(shí)譜線的兩側(cè)的其它頻率點(diǎn)上出現(xiàn)些幅值較小的干擾譜線[21]。柵欄效應(yīng)是指各次諧波分量未正好落在頻率分辨點(diǎn)上,落在兩個(gè)頻率分辨點(diǎn)之間[22],F(xiàn)FT算法不能直接得到各次諧波的準(zhǔn)確值,而只能以相鄰頻率分辨點(diǎn)數(shù)值代替[23]。針對(duì)頻譜泄露現(xiàn)象和柵欄效應(yīng),對(duì)FFT算法進(jìn)行改進(jìn)以有效解決這兩個(gè)問(wèn)題,同時(shí)提高諧波數(shù)據(jù)的測(cè)量精度。
FFT改進(jìn)算法分為自動(dòng)同步采樣FFT和手動(dòng)同步加窗FFT兩種算法。計(jì)量芯片HT7036時(shí)鐘頻率為921.6 kHz,ADC采樣頻率為3.2 kHz,每周波固定采樣64點(diǎn)。自動(dòng)同步采樣不易受外接頻率微小變化的影響,具有較高的自適應(yīng)性;手動(dòng)同步采樣FFT算法可獲取更高頻率的諧波含有率數(shù)據(jù),但需通過(guò)適當(dāng)?shù)拇昂瘮?shù)來(lái)確保采樣數(shù)據(jù)與原信號(hào)同步,減少頻譜泄露現(xiàn)象。表3為自動(dòng)同步FFT算法與手動(dòng)同步FFT算法簡(jiǎn)要配置。
表3 諧波采集算法簡(jiǎn)要配置
窗函數(shù)能夠有效降低頻譜泄露現(xiàn)象,大幅度提高幅值數(shù)據(jù)的測(cè)量精度。為獲得較好的數(shù)據(jù)測(cè)量效果,窗函數(shù)的主瓣應(yīng)盡可能窄小,以獲得較陡的過(guò)渡帶;最大旁瓣相對(duì)于主瓣應(yīng)盡可能的小,以使數(shù)據(jù)更加集中。根據(jù)窗函數(shù)選取的原則,通過(guò)對(duì)矩形窗、漢寧窗、海明窗、布萊克曼窗、布萊克曼哈里斯窗等窗函數(shù)的比較,最終確定選用布萊克曼哈里斯窗等窗函數(shù)用于智能電能表的采樣處理。
FFT改進(jìn)算法時(shí)域上滿足奎奈斯特采樣定理,電能表終端的采樣頻率與采樣點(diǎn)數(shù)的設(shè)置均較為合理,相鄰頻率點(diǎn)之間的間隔始終為50 Hz,各次諧波分量恰好落在頻率分辨點(diǎn)上,較好地解決了柵欄效應(yīng)。
4.3.1 浪涌應(yīng)對(duì)
浪涌會(huì)改變計(jì)量芯片內(nèi)部寫(xiě)入的配置參數(shù),影響采樣、MCU與計(jì)量芯片間通信,甚至?xí)?dǎo)致終端電能表死機(jī)。僅從硬件電路設(shè)計(jì)上進(jìn)行預(yù)防,并不能完全規(guī)避浪涌。終端受到浪涌影響時(shí),須重新寫(xiě)入配置參數(shù)。在終端進(jìn)行數(shù)據(jù)采樣前,需保障計(jì)量芯片內(nèi)部的存儲(chǔ)參數(shù)準(zhǔn)確無(wú)誤。通過(guò)存儲(chǔ)計(jì)量芯片配置參數(shù),在計(jì)量芯片受到影響時(shí),重新寫(xiě)入預(yù)先存儲(chǔ)的配置參數(shù)后再進(jìn)行數(shù)據(jù)采樣。
計(jì)量芯片配置參數(shù)固化在STM32L431芯片F(xiàn)LASH存儲(chǔ)區(qū)域最后一個(gè)扇區(qū),配置參數(shù)是經(jīng)過(guò)無(wú)源校準(zhǔn)后確定的最終數(shù)據(jù)。計(jì)量芯片每次進(jìn)行采樣前,需讀取校表數(shù)據(jù)校驗(yàn)和寄存器數(shù)據(jù),與MCU存儲(chǔ)的原始數(shù)據(jù)作對(duì)比,一致才進(jìn)行采樣;否則,重新初始化SPI通信模塊,將參數(shù)重新寫(xiě)入到計(jì)量芯片中。圖5為浪涌應(yīng)對(duì)策略的流程。
圖5 浪涌對(duì)抗處理流程
4.3.2 通訊模組保障
外接傳感器包括用于提示信息顯示的LCD、使用計(jì)量芯片HT7036的電網(wǎng)數(shù)據(jù)采集傳感器。LCD配置依靠LCD用戶構(gòu)件實(shí)現(xiàn);電網(wǎng)數(shù)據(jù)采集傳感器配置依靠metering構(gòu)件實(shí)現(xiàn)。LCD、metering構(gòu)件是對(duì)SPI基礎(chǔ)構(gòu)件的二次開(kāi)發(fā)。LCD配置主要通過(guò)LCD_init函數(shù)實(shí)現(xiàn),再通過(guò)LCD_Showfirst函數(shù)設(shè)置與系統(tǒng)有關(guān)的LCD初始顯示內(nèi)容,最后通過(guò)LCD_ShowString函數(shù)設(shè)置系統(tǒng)提示語(yǔ)句。電網(wǎng)數(shù)據(jù)采集傳感器配置主要通過(guò)metering_init函數(shù),初始化電網(wǎng)數(shù)據(jù)采集傳感器,再調(diào)用read_MeasurementParameter函數(shù),獲取計(jì)量芯片ID(0x712 2A0),根據(jù)電網(wǎng)數(shù)據(jù)采集傳感器返回值判斷是否需要重新初始化。初始化成功后再使用邏輯控制文件內(nèi)的correction_init函數(shù)獲取配置參數(shù),使用metering構(gòu)件的metering_PUIcorrection函數(shù)向電網(wǎng)數(shù)據(jù)采集傳感器寫(xiě)入配置參數(shù),圖6為電網(wǎng)數(shù)據(jù)采樣傳感器配置流程。
圖6 電網(wǎng)數(shù)據(jù)采樣傳感器配置流程
通信模組ME3616的配置通過(guò)UECOM用戶構(gòu)件實(shí)現(xiàn),需要先開(kāi)啟通訊模組電源,再初始化通訊模組、連接基站、連接云服務(wù)器[26]。在此過(guò)程中,還會(huì)根據(jù)基站時(shí)間校正終端時(shí)間,并記錄終端位置信息,圖7為通訊模組配置流程。
圖7 通訊模組穩(wěn)定性保障機(jī)制
電網(wǎng)質(zhì)量監(jiān)測(cè)系統(tǒng)的邏輯由邏輯控制文件實(shí)現(xiàn),主要邏輯依靠main.c文件內(nèi)的for循環(huán)實(shí)現(xiàn)。在未到達(dá)采樣時(shí)間間隔時(shí),系統(tǒng)依靠定時(shí)器中斷,每秒更新一次終端時(shí)間,并反轉(zhuǎn)指示燈的亮暗表示終端處于工作狀態(tài)。在到達(dá)采樣間隔后,依據(jù)終端當(dāng)前命令,執(zhí)行具體操作,表4為命令字對(duì)應(yīng)具體操作。
表4 終端指令
智能電能表采集了實(shí)時(shí)電流、電壓、有功功率、無(wú)功功率、視在功率以及電能等信息,圖8為終端信息顯示界面。界面中IMSI為終端識(shí)別號(hào)、MCU_temperature為終端芯片的溫度;IP:PT為采集數(shù)據(jù)上傳的云服務(wù)器IP地址及端口、OriTime為終端開(kāi)始運(yùn)行的時(shí)間、Time為當(dāng)前時(shí)間;U為電壓、I為電流,P為有功功率、Q為無(wú)功功率、S為視在功率,Ep為累計(jì)的有功電能、Eq為累計(jì)的無(wú)功電能、Es為累計(jì)的視在電能,ED為當(dāng)天的有功電能、無(wú)功電能、視在電能;EM、ED分別統(tǒng)計(jì)當(dāng)月、當(dāng)天的有功電能、無(wú)功電能、視在電能;Signal strength(%)為窄帶通信模塊的信號(hào)強(qiáng)度。
圖8 終端顯示界面
圖9為云端數(shù)據(jù)顯示界面,從圖中可看到終端到云端的數(shù)據(jù)傳送可靠。
圖9 云端顯示界面
同步采用ACR330ELH/J作為標(biāo)準(zhǔn)表,對(duì)同路進(jìn)行測(cè)量,表5為實(shí)驗(yàn)開(kāi)發(fā)的電能表與標(biāo)準(zhǔn)表采集數(shù)據(jù)的對(duì)比。
表5 數(shù)據(jù)對(duì)比
圖10為一段時(shí)間內(nèi),各種采樣算法電壓測(cè)量值與ACR330ELH/J標(biāo)準(zhǔn)表測(cè)量數(shù)據(jù)對(duì)比圖,圖中電能表終端與標(biāo)準(zhǔn)表數(shù)據(jù)測(cè)量的最大誤差為0.5 V,最大誤差率出現(xiàn)在測(cè)量值為228.5 V、標(biāo)準(zhǔn)表228 V,該誤差率約為0.22%。百分比誤差率不高于0.5%,實(shí)驗(yàn)表的測(cè)量精度符合0.5級(jí)電能表要求。誤差主要來(lái)源:(1)測(cè)量電能表元器件采樣值精度及轉(zhuǎn)換存在一定的誤差;(2)標(biāo)準(zhǔn)表的測(cè)量存在誤差。
圖10 電壓測(cè)量對(duì)比圖
(1)提出窄帶物聯(lián)網(wǎng)開(kāi)發(fā)的三層架構(gòu),即AHL NB-IoT架構(gòu)。框架將硬件、數(shù)據(jù)傳輸和人機(jī)接口分開(kāi),簡(jiǎn)化開(kāi)發(fā)細(xì)節(jié)、降低開(kāi)發(fā)難度,為窄帶物聯(lián)網(wǎng)應(yīng)用開(kāi)發(fā)奠定了基礎(chǔ);
(2)針對(duì)終端電能表偶發(fā)性數(shù)據(jù)超出閾值情況,對(duì)均值濾波算法進(jìn)行改進(jìn),將采集到的多條數(shù)據(jù),去除超出閾值范圍的非正常數(shù)據(jù)后再進(jìn)行處理,可得到有效的采樣數(shù)據(jù)值;
(3)針對(duì)終端電能表諧波測(cè)量中出現(xiàn)的頻譜泄露和柵欄現(xiàn)象,對(duì)快速傅里葉變換算法進(jìn)行了改進(jìn),在手動(dòng)和自動(dòng)采集兩種方案中,給出了設(shè)置的相關(guān)技巧可以有效解決頻譜泄露和柵欄現(xiàn)象;
(4)穩(wěn)定性是終端電能表重要基礎(chǔ)指標(biāo)。針對(duì)浪涌現(xiàn)象,分別從硬件和軟件處理流程兩個(gè)方面給出了解決方案;針對(duì)數(shù)據(jù)通信,通過(guò)重寫(xiě)參數(shù)方式來(lái)保障通信;
通過(guò)數(shù)據(jù)采樣實(shí)驗(yàn),將實(shí)驗(yàn)表采樣到的數(shù)據(jù)與標(biāo)準(zhǔn)表同步測(cè)量數(shù)據(jù)對(duì)比,設(shè)計(jì)的電能表測(cè)量精度、穩(wěn)定性均達(dá)到要求,為電能監(jiān)測(cè)提供了多種參數(shù)監(jiān)測(cè)的方法,為智能電網(wǎng)建設(shè)相關(guān)的研究工作提供了參考藍(lán)本。