張秋雁 張俊瑋 叢中笑 宋錫強 謝永明 汪萍萍
摘 要:面向電能表國際建議IR46標準提出的法制計量與非法制計量軟件分離的要求,研究基于單MCU策略的智能電能表軟件法制計量設(shè)計,將法制計量以及計量必須的組件設(shè)計為最小"系統(tǒng)"的基表,內(nèi)部采用積木式、模塊化結(jié)構(gòu),法制計量基表部分不能改變和升級,其它應(yīng)用功能模塊獨立設(shè)計并可任意配置和在線升級;通過采用操作系統(tǒng)控制MPU進行分層分塊隔離和保護,通信協(xié)議基于DLMS/COSEM高級計量架構(gòu),兼具開放性、互操作性,設(shè)計統(tǒng)一的帶保護的外置通信模塊接口,自適應(yīng)各種通信模塊。
關(guān)鍵詞:IR46;單MCU;法制計量;積木式;在線升級
中圖分類號:S611 文獻標識碼:A
Abstract: For the international recommendations IR46 standard of the energy meter proposed legal measurement and non-legal measurement software separation requirements,researched software legal design of the energy meter based on single MCU strategy,the legal measurement system and its necessary components designed as the smallest "system" of the base meter,designed by using modular structure inside the meter,in order to each component was independent of each other ,legal measurement part can not change and upgrade.Other application function modules were designed independently,could be arbitrarily configured and online upgrade.Used operating system to control MPU for layered block isolation and protection,communication protocol based on DLMS/COSEM advanced metering architecture,which is open and interoperable,designed a unified external communication module interface whit protection function,adapt to a variety of communication modules.
Key words: IR46;single MCU;legal Measurement;building block system;online upgrade
為了適應(yīng)智能電網(wǎng)和新能源的發(fā)展,智能電能表除了具備傳統(tǒng)基本電能計量功能以外,用戶端控制、雙向數(shù)據(jù)通信、分布式能源接入及防竊電等智能化功能越來越豐富,智能電能表將代表著未來節(jié)能型智能電網(wǎng)用戶智能化終端的發(fā)展方向[1-2]。但從本質(zhì)和核心功能上講,電能表最根本的功能是法定計量,旨在保證計量的合法性[3-4],現(xiàn)有的電能表將電能計量和其它智能化功能一體化設(shè)計,導(dǎo)致其它功能部分軟硬件的設(shè)計更改容易影響到計量性能;其它功能的損壞或失效也容易影響到計量部分損壞或失效,導(dǎo)致大量由于其它功能的故障引起計量故障。所以有必要將計量部分獨立出來,最大限度的保證不受其它功能因素的影響,以保證電能表計量的可靠性和穩(wěn)定性。
本文面向電能表國際建議IR46標準中提出的計量性能保護要求,研究基于單MCU及操作系統(tǒng)的電能表軟件法制計量與非法制計量分離設(shè)計,研究非法制軟件在線升級設(shè)計,研究其系統(tǒng)設(shè)計、軟件設(shè)計架構(gòu)及關(guān)鍵功能設(shè)計方案,核心旨在提高法制計量的獨立性和可靠性[5-6]。
1 IR46標準關(guān)于電能表軟件法制計量
性能保護要求
電能表國際建議IR46是國際法制計量組織(OIML)下屬TC12組織起草的一個技術(shù)文件,為新設(shè)計生產(chǎn)的電能表的型式批準提出建議,是國際法制計量的重要組成部分。TC12組織了對電能表國際建議IR46的修改,相關(guān)的修訂工作已于2012年年底完成。IR46標準對電能計量提出了更高的統(tǒng)一的要求,尤其增加了軟件計量性能保護要求,其核心思想在于法制計量部分要被保護及非法制部分軟件可在線升級,法制計量功能與非法制計量部分要分離,非法制部分的功能、接口等改變不能影響法制計量部分;非法制部分功能可在線升級,但升級不能影響法制計量部分,若升級不成功,可恢復(fù)升級前程序[7-8]。我國也正在將IR46標準轉(zhuǎn)化到我國的國標和企業(yè)標準中[9]。
目前關(guān)于IR46表的法制計量與非法制計量分離設(shè)計,主要有兩種策略,一種是采用"雙芯"策略,將用于實現(xiàn)法制計量功能的MCU與實現(xiàn)應(yīng)用功能的MCU進行物理隔離,進而使法制計量功能與其它功能徹底分離,但該策略會導(dǎo)致電能表結(jié)構(gòu)體積變大及成本的提高。
本文采用單MCU策略,通過操作系統(tǒng)控制MPU進行分層分塊隔離和保護,在電表內(nèi)部實現(xiàn)法制計量程序與應(yīng)用程序的物理隔離,實現(xiàn)法制計量基表軟件和功能性軟件分離,功能性軟件可升級,應(yīng)用程序采用積木式、模塊化構(gòu)造可增加、刪減、任意配置[10]。同時智能表協(xié)議和架構(gòu)采用DLMS/COSEM高級計量架構(gòu),使得不同通信方式在智能表內(nèi)部實現(xiàn)有機的統(tǒng)一[11],解決不同廠家、不同設(shè)備的兼容,具有開放性、互換性和互操作性。
2 基于單MCU的電能表法制計量系統(tǒng)
架構(gòu)設(shè)計
2.1 系統(tǒng)架構(gòu)設(shè)計
系統(tǒng)架構(gòu)設(shè)計如圖1所示,黑框線內(nèi)為可保證計量的基表最小系統(tǒng),即法制計量與相關(guān)組件,其它功能為可按需求進行選配的應(yīng)用組件。法制計量部分由外殼、 電源、計量、顯示、紅外通信、485通信和按鍵部分等構(gòu)成,法制計量部分出廠后不能改變和升級,其內(nèi)部互相獨立、模塊化設(shè)計,設(shè)計隔離的無源電脈沖、多功能輸出口、供電的拉合閘模塊,RS485隔離且單獨采用隔離電源供電,RS485的損壞不影響法制計量、拉合閘通信等正常工作;通信模塊部分不需要打開表蓋就可以方便的在線更換各種通信模塊,如:各種載波、微功率無線等,設(shè)計統(tǒng)一的通信模塊接口,基表可自適應(yīng)各種通信模塊,通信模塊外露電氣接口具有短路和過載保護功能,通信模塊接口損壞不影響法制計量性能。
2.2 電源及通信關(guān)鍵模塊設(shè)計
(1)隔離開關(guān)電源設(shè)計
①寬輸入電壓范圍,滿足在AC100V ~AC275V范圍內(nèi),表計內(nèi)各功能單元正常運行;
②高輸出功率,電源峰值輸出功率達到10W以上,不同類型通信模塊功率差異較大,以及不同品牌通信模塊峰值功率不同,充分兼容可能出現(xiàn)的各種通信模塊。
③多路輸出,各路電源之間隔離設(shè)計;多路輸出滿足不同功能模塊的供電,同時電源之間滿足相關(guān)的隔離等級要求。
④提高整表的電源轉(zhuǎn)換效率,節(jié)約電能在整表消耗較大的功率時,使用開關(guān)電源設(shè)計以提高整機的電源轉(zhuǎn)換效率。
⑤充分的保護設(shè)計,電源具有預(yù)防輸入過電壓,輸出過電壓、過功率保護等功能。
電源的設(shè)計框圖如圖2所示。
(2)通信模塊接口兼容性設(shè)計
通信模塊接口考慮模塊可更換,接口外露,所以該接口含保護設(shè)計。接口電源方面,采用帶過流保護功能的低壓差的LDO或者DC/DC電路的方式實現(xiàn),在出現(xiàn)過載、短路等異常情況下不影響整機的正常運行,并保證電源輸出紋波滿足不大于輸出電壓(12V±1V)的0.1%要求。
對于弱電信號設(shè)計電平范圍3V~5V,兼容各種通信模塊的工作電平;對于輸入信號,模塊接口采用開漏輸出方式,采用外接上拉電阻方式進行電平匹配;對于輸出信號,采用三極管開漏方式驅(qū)動輸出。信號線路中均串聯(lián)低阻值電阻,防止信號線路中可能出現(xiàn)的過電流,信號的開路驅(qū)動輸出如圖3、圖4所示,輸出信號端采用虛線框內(nèi)三極管集電極開漏方式,接收端需要進行電阻上拉方式接入。
(3)拉合閘設(shè)計
對于內(nèi)置的負荷開關(guān)的驅(qū)動,驅(qū)動電源在設(shè)計時與其它電路合理規(guī)避,取電位置與基表供電電源分開,驅(qū)動信號采用光耦隔離,防止負荷開關(guān)在進行分、合閘操作時驅(qū)動線圈對電源造成沖擊,影響其他電路的穩(wěn)定性。
3 基于操作系統(tǒng)的軟件分離方案設(shè)計
3.1 軟件架構(gòu)設(shè)計
總體模型是基于CMSIS架構(gòu)模型,CMSIS是ARM公司和眾多芯片廠商共同制定的Cortex軟件架構(gòu)模型,該模型具有極高的兼容性、互操作性、互換性、可裁剪性和可擴展性,軟件層次化、各層接口標準化設(shè)計?;谠撃P驮O(shè)計獨立于基表的最小系統(tǒng)軟件,設(shè)計統(tǒng)一的功能性應(yīng)用任務(wù)模塊接口。軟件具體架構(gòu)設(shè)計如圖5所示,主要包含以下兩個部分。
(1)FreeRTOS操作系統(tǒng)
采用成熟的開源嵌入式實時操作系統(tǒng)FreeRTOS操作系統(tǒng)作為表計軟件平臺的核心,控制MPU進行分層分塊隔離和保護,控制驅(qū)動的穩(wěn)定運行,調(diào)度各應(yīng)用任務(wù)模塊的協(xié)調(diào)工作,同時當功能程序任務(wù)崩潰時,可以在不重啟計量,最大可能的排除故障和重啟功能程序任務(wù),保證計量的連續(xù)性。采用實時操作系統(tǒng)后,可提高通信實時性,提高通信采集成功率,并且為新通信技術(shù)提供了實時性的軟件平臺。
(2)系統(tǒng)平臺和中間層、對象數(shù)據(jù)接口層、應(yīng)用層
廣義上中間層、對象數(shù)據(jù)接口層、應(yīng)用層屬于應(yīng)用層。系統(tǒng)平臺除了系統(tǒng)調(diào)用接口以外均運行在特權(quán)模式,應(yīng)用層必須通過系統(tǒng)調(diào)用接口才能調(diào)用系統(tǒng)服務(wù),保證了系統(tǒng)的安全性。
系統(tǒng)平臺中的CMSIS庫由ARM公司開發(fā),芯片內(nèi)核采用統(tǒng)一的庫,與具體芯片廠商無關(guān),為RTOS和表計驅(qū)動程序提供統(tǒng)一接口;FreeRTOS是第三方開發(fā)的開源嵌入式操作系統(tǒng),與采用什么芯片、開發(fā)什么產(chǎn)品無關(guān)[12]。為表計應(yīng)用提供統(tǒng)一接口。
HAL硬件抽象層為具體芯片公司芯片進行開發(fā),例如ST公司的STM32L系列MCU,為表計驅(qū)動程序提供統(tǒng)一接口;驅(qū)動程序是需要自行開發(fā)的,與表計應(yīng)用息息相關(guān)。主要包括:IIC驅(qū)動、SPI驅(qū)動、UART驅(qū)動、定時器驅(qū)動、GPIO驅(qū)動、AD驅(qū)動等。
軟件應(yīng)用層將軟件分為三個區(qū):計量基表軟件(法制計量)、功能軟件、功能軟件備份。法制計量軟件包括系統(tǒng)平臺和對象數(shù)據(jù)接口層、中間層和法制計量必備應(yīng)用任務(wù)模塊,主要為電量計量、電源模塊、液晶顯示模塊、數(shù)據(jù)管理模塊;功能應(yīng)用模塊包括凍結(jié)、事件、負荷記錄、時鐘、需量、費率、通信等模塊,功能軟件備份是與功能軟件相同的地址空間,將升級程序?qū)懭牍δ苘浖浞輩^(qū),校驗完成后將功能軟件接口指向備份區(qū),重啟升級后的功能程序任務(wù)。系統(tǒng)采用嵌入式軟件強制要求的硬件內(nèi)存保護技術(shù),對法制計量系統(tǒng)平臺軟件進行保護,使功能軟件的BUG導(dǎo)致的功能程序混亂從硬件上保證不影響基表系統(tǒng)平臺。通信協(xié)議采用高級計量架構(gòu)DLMS/COSEM標準協(xié)議,使得不同通信方式在智能表內(nèi)部實現(xiàn)了有機的統(tǒng)一,從PRIME載波更換到G3載波,從載波更換到無線,只需更改相關(guān)底層協(xié)議層,從COSEM應(yīng)用層到用戶的應(yīng)用層是相同的,不需要更改,是下一代高級計量電能表通信應(yīng)用的必然發(fā)展趨勢。
3.2 MPU計量性能保護設(shè)計
由RTOS管理MPU來區(qū)分出特權(quán)模式和用戶模式分別能訪問的資源,具體MPU關(guān)鍵計量保護設(shè)計見圖6所示。所有跟硬件相關(guān)、驅(qū)動程序相關(guān)以及RTOS自身程序均在特權(quán)模式下工作,用戶模式無法訪問特權(quán)模式的數(shù)據(jù),也無法運行特權(quán)模式的程序,即使用戶程序跑飛混亂,也無法干擾系統(tǒng)平臺;將應(yīng)用層的各個應(yīng)用任務(wù)模塊獨立開來,系統(tǒng)平臺和基表應(yīng)用模塊保護起來,并配置成不可升級,其它功能應(yīng)用部分配置可升級。
3.3 軟件在線升級設(shè)計
根據(jù)IR46標準要求,非法制計量功能可升級,且不影響法制計量功能,若升級失敗,程序可恢復(fù)先前版本。主要有2種方案設(shè)計實現(xiàn)可升級功能,一種使用片上和片外Flash;一種不使用片外Flash,將片上Flash劃分為2個區(qū)。
(1)基于片上和片外FLASH空間存儲的升級設(shè)計
片上和片外FLASH代碼空間存儲劃分如圖7所示。MCU片上FLASH劃分為引導(dǎo)代碼、法制相關(guān)代碼、非法制代碼三個區(qū)。采用片外串口FLASH作為程序接收和備份的中轉(zhuǎn)區(qū)。升級程序本身作為法制相關(guān)代碼。
在線升級處理步驟如下:
步驟1:升級程序接收遠程發(fā)送的非法制代碼數(shù)據(jù)幀,將收到的代碼存放在片外FLASH新版本區(qū),校驗程序完整性通過后,置程序升級標志,進入下一步。
步驟2:系統(tǒng)復(fù)位,進入引導(dǎo)代碼,判斷到程序升級標志時,備份當前非法制代碼到片外FLASH區(qū)。
步驟3:新程序?qū)氲椒欠ㄖ拼a片內(nèi)FLASH區(qū),記錄程序升級記錄。
步驟4:系統(tǒng)復(fù)位,允許新程序運行。
(2)基于片上FLASH的空間存儲在線升級設(shè)計
不使用片外FLASH,將片上FLASH劃分為2個區(qū)。MCU片上FLASH劃分為平等關(guān)系的區(qū)1和區(qū)2,引導(dǎo)代碼和法制相關(guān)代碼在2個區(qū)均有駐留。在線升級處理步驟如下(假設(shè)當前在區(qū)1運行程序):
步驟1:升級程序接收遠程發(fā)送的非法制代碼數(shù)據(jù)幀,將收到的代碼存放在非法制代碼;
步驟2:系統(tǒng)復(fù)位,進入引導(dǎo)代碼,校驗新程序完整性通過后,記錄程序升級記錄后,直接運行區(qū)2新程序。
相比較方案1存在一定的缺陷,備份當前代碼和導(dǎo)入新代碼中途出現(xiàn)中斷時數(shù)據(jù)完整性難保證;備份當前代碼和導(dǎo)入新代碼時間長,而且電能表一直在引導(dǎo)程序中,有校長時間不能運行法制程序,導(dǎo)致程序升級期間電量可能少計。方案2由于采用了兩個片上FLASH區(qū),不存在備份和導(dǎo)入新代碼的問題,升級程序下載后不需要導(dǎo)代碼,新程序復(fù)位后立即運行,不存在程序升級期間電量少計的問題,建議選擇方案2。
4 結(jié)論
針對電能表國際建議IR46標準提出的軟件法制計量與非法制計量分離的要求,研究了基于單MCU和軟件操作系統(tǒng)結(jié)合的新型智能電能表設(shè)計方案,該方案調(diào)度智能電能表各應(yīng)用任務(wù)模塊的協(xié)調(diào)工作,可最大程度節(jié)省產(chǎn)品硬件成本,提高通信的實時性。具體研究了法制計量與非法制計量分離的設(shè)計架構(gòu)及計量性能保護設(shè)計、非法制在線升級設(shè)計方法,保障軟件法制計量與其它功能的隔離,其它功能在線升級不影響法制計量。同時法制計量與非法制應(yīng)用功能,基于積木式、模塊化設(shè)計理念,在電表內(nèi)部實現(xiàn)各組件的獨立設(shè)計,通信模塊接口兼容性設(shè)計,實現(xiàn)應(yīng)用功能的高可配置性,降低產(chǎn)品的復(fù)雜性、提高產(chǎn)品可靠性。
參考文獻
[1] 劉錦華.智能電能表及其應(yīng)用研究[J].山西科技,2014,29(3):85—86.
[2] 郭興昕,賈軍,郭曉艷,等.智能電能表發(fā)展歷程及應(yīng)用前景[J].江蘇電機工程,2012,31(1):82—84.
[3] 冮若嘉,何健寧,趙婉旭,等.電能表的發(fā)展和應(yīng)用[J].科技創(chuàng)新導(dǎo)報,2017,(14):99—100.
[4] 韓霄漢,胡小寒,姚力,等.競爭性電力市場背景下電能計量發(fā)展趨勢的思考[J].浙江電力,2017,36(3):30—33.
[5] 汪東紅,朱中文,周韶園,等.電能表常數(shù)的定量化試驗方法研究[J].計量技術(shù),2010(4):34—37.
[6] 吳瀛,呂家圣,陳禾,等.OIML IR46電能表型式評價中軟件型評的要求和方法[J].2013(12):33—36.
[7] 崔偉群.歐盟關(guān)于計量器具軟件測評的現(xiàn)狀與發(fā)展[J],中國計量,2012,(8):19—22.
[8] 吳瀛,呂家圣,陳禾,等.OMIL IR46電能表型式評價中軟件型評的要求與方法[J],計量技術(shù),2013,(12):33—36.
[9] 劉明杰,周林,苗長勝,等.新一代智能電能表的發(fā)展探討[J],電測與儀表,2017,54(18):94—99.
[10] 童時中.模塊化是復(fù)雜產(chǎn)品系統(tǒng)發(fā)展的"必由之路"[J],中國標準導(dǎo)報,2015(11):18—23.
[11] 彭健.DLMS/COSEM標準協(xié)議在三相智能電表中實現(xiàn)的方法[J],科技與企業(yè),2013,(9):110—111.
[12] 張龍彪,張果,王劍平,等.嵌入式操作系統(tǒng)FreeRTOS的原理與移植實現(xiàn)[J],信息技術(shù),2012(11):31—34.