劉 建, 歐陽(yáng)曾愷, 田正其, 段梅梅 , 王 越, 吳義鵬*
(1.國(guó)網(wǎng)江蘇省電力有限公司電力科學(xué)研究院, 南京 211103; 2.國(guó)網(wǎng)江蘇省電力有限公司營(yíng)銷服務(wù)中心, 南京 210019;3.國(guó)家電網(wǎng)公司電能計(jì)量重點(diǎn)實(shí)驗(yàn)室, 南京 210019; 4.南京航空航天大學(xué)航空學(xué)院, 南京 210006)
隨著物聯(lián)網(wǎng)產(chǎn)業(yè)的迅速發(fā)展及萬(wàn)物物聯(lián)概念的普及,智能穿戴、家居,無(wú)線傳感器等設(shè)備的市場(chǎng)占有率不斷上升,數(shù)量越來(lái)越多[1-2]。目前上述無(wú)線設(shè)備使用的通信技術(shù)協(xié)議主要有Wifi、ZigBee、Bluetooth(藍(lán)牙)、LoRa、NB-IoT等[3-6]。將基于低功耗藍(lán)牙協(xié)議開(kāi)發(fā)一種典型的無(wú)線溫濕度傳感器節(jié)點(diǎn),通過(guò)周期性地采集節(jié)點(diǎn)周圍環(huán)境溫、濕度信息并發(fā)送給移動(dòng)電話或平板電腦,使設(shè)備擁有者及時(shí)獲知環(huán)境的基本物理信息。低功耗藍(lán)牙通信協(xié)議具有功耗低、數(shù)據(jù)傳輸率高,延遲低、可交互等優(yōu)點(diǎn),獲得了相對(duì)較快的發(fā)展[7]。目前大部分智能穿戴設(shè)備和智能家居設(shè)備均選擇使用低功耗藍(lán)牙作為主要通信協(xié)議[8],在科學(xué)研究、工業(yè)生產(chǎn)等方面也有不少應(yīng)用[9-11]。研究低功耗藍(lán)牙無(wú)線智能設(shè)備中的相關(guān)技術(shù)具有較高的工程應(yīng)用價(jià)值[12]。
采用低功耗藍(lán)牙通信協(xié)議的無(wú)線傳感器節(jié)點(diǎn)是一種可以實(shí)現(xiàn)信息共享,具有感知、通信以及數(shù)據(jù)運(yùn)算處理的獨(dú)立智能節(jié)點(diǎn)[13]。相比有線傳感器設(shè)備,其不需要與主機(jī)甚至電源進(jìn)行有線連接,從而使用更加便捷、布置環(huán)境更加廣泛。但在一些較為苛刻的環(huán)境下安裝無(wú)線傳感器節(jié)點(diǎn),又無(wú)電網(wǎng)接入電源,為延長(zhǎng)使用時(shí)間、降低電池更換維護(hù)成本,對(duì)設(shè)備的功耗要求將極其嚴(yán)苛。為降低上述設(shè)備的平均功耗同時(shí)確保設(shè)備性能,F(xiàn)eng等[14]選擇研究了數(shù)據(jù)包封裝優(yōu)化策略;陳志國(guó)等[15]則在降低無(wú)線傳輸時(shí)延上進(jìn)行了深入挖掘;藍(lán)牙廣播模式功耗、廣播參數(shù)設(shè)置等對(duì)設(shè)備長(zhǎng)期功耗的影響機(jī)制及優(yōu)化策略也被提了出來(lái)[16-17];Liu等[18]還對(duì)無(wú)線節(jié)點(diǎn)掃描發(fā)現(xiàn)臨近設(shè)備過(guò)程的能耗進(jìn)行了定量分析。與此同時(shí),藍(lán)牙網(wǎng)絡(luò)可靠性與效率調(diào)節(jié)[19],網(wǎng)絡(luò)安全機(jī)制等[20]也得到了關(guān)注與討論。
總體說(shuō)來(lái),以上研究主要集中在應(yīng)用系統(tǒng)設(shè)計(jì)、藍(lán)牙通信協(xié)議架構(gòu)與優(yōu)化等方面,針對(duì)藍(lán)牙設(shè)備實(shí)際工作狀態(tài)中的功耗模型研究還比較少。難以直觀量化平均功耗值并指導(dǎo)針對(duì)不同工作環(huán)境條件下的無(wú)線節(jié)點(diǎn)設(shè)備開(kāi)發(fā)。為此,設(shè)計(jì)并開(kāi)發(fā)了一款典型的無(wú)線傳感器設(shè)備,根據(jù)其工作特征自定義了無(wú)線數(shù)據(jù)吞吐率(wireless data throughput,WDT)及工作占空比(operation duty cycle,ODC)兩個(gè)基本參數(shù)。在此基礎(chǔ)上建立了基于上述參數(shù)的無(wú)線傳感器設(shè)備一般功耗模型,同時(shí)借助所搭建的功耗測(cè)試平臺(tái),實(shí)驗(yàn)測(cè)量了無(wú)線傳感器設(shè)備在不同工況下的平均功耗值,實(shí)驗(yàn)結(jié)果驗(yàn)證了一般功耗模型,對(duì)于無(wú)線節(jié)點(diǎn)的功耗分析以及實(shí)際功耗優(yōu)化具有一定意義,最終為低功耗無(wú)線設(shè)備的功耗分析和優(yōu)化提供了研究基礎(chǔ)和指導(dǎo)方案。
圖1為所開(kāi)發(fā)的典型低功耗無(wú)線傳感器及其與主機(jī)設(shè)備通信示意圖,傳感器節(jié)點(diǎn)通過(guò)藍(lán)牙通信協(xié)議與平板電腦、手機(jī)等主機(jī)設(shè)備連接,將采集得到的環(huán)境溫、濕度,節(jié)點(diǎn)自身供電電壓等信息直觀顯示出來(lái)。主機(jī)設(shè)備還可以通過(guò)用戶交互界面對(duì)傳感器節(jié)點(diǎn)進(jìn)行參數(shù)配置,如采集精度配置、采集物理量選擇等。用戶交互界面及功能實(shí)現(xiàn)為獨(dú)立開(kāi)發(fā)的微信小程序,該小程序開(kāi)發(fā)平臺(tái)完善,程序靈活度高、適應(yīng)性強(qiáng),同時(shí)支持在配備藍(lán)牙功能的設(shè)備上運(yùn)行。
圖1 典型低功耗無(wú)線傳感器節(jié)點(diǎn)及其工作示意圖
無(wú)線傳感器智能節(jié)點(diǎn)主要由德州儀器公司的CC2640R2F模塊和盛思銳公司的SHT30溫濕度傳感器模塊組成。其中CC2640R2F主要適用于Bluetooth 4.2和Bluetooth 5.0的低功耗應(yīng)用,內(nèi)部含有一個(gè)32 位ARM Cortex-M3 內(nèi)核作為主處理器,其射頻核心由一個(gè)ARM Cortex-M0 內(nèi)核單獨(dú)控制,支持1.8~3.8 V的寬電源電壓工作范圍。 SHT30溫濕度傳感器結(jié)合了多種功能和各種接口,提供了增強(qiáng)信號(hào)處理、兩個(gè)獨(dú)特和用戶可選I2C地址、一個(gè)可編程溫濕度極限的報(bào)警模式等功能,可同樣在2.15~5.5 V的寬電源電壓范圍內(nèi)工作。所述無(wú)線傳感器智能節(jié)點(diǎn)還保留了所有的GPIO口可以提供給更多的外接設(shè)備,具有強(qiáng)大的可拓展性。無(wú)線傳感器智能節(jié)點(diǎn)硬件設(shè)計(jì)基于以上描述的CC2640R2F模塊和SHT30模塊。最終通過(guò)Altium Designer 19電子產(chǎn)品PCB開(kāi)發(fā)軟件,設(shè)計(jì)了一款基于藍(lán)牙協(xié)議的典型無(wú)線傳感器智能節(jié)點(diǎn)。
上述無(wú)線傳感器智能節(jié)點(diǎn)主要的工作是對(duì)真實(shí)環(huán)境下的溫度、濕度及供電電壓3個(gè)物理量進(jìn)行測(cè)量,并進(jìn)行一定的邏輯運(yùn)算處理,然后通過(guò)藍(lán)牙通信協(xié)議傳遞給主機(jī)設(shè)備。根據(jù)CC2640R2F模塊提供的開(kāi)發(fā)案例,本傳感器節(jié)點(diǎn)實(shí)際工作狀態(tài)可分為無(wú)線數(shù)據(jù)傳輸和數(shù)據(jù)采集及邏輯運(yùn)算兩個(gè)進(jìn)程,分別對(duì)應(yīng)ARM Cortex-M0和ARM Cortex-M3兩個(gè)內(nèi)核,兩個(gè)進(jìn)程“互不干擾、同時(shí)進(jìn)行”,如圖2所示。傳感器節(jié)點(diǎn)上電復(fù)位后,首先作為藍(lán)牙從機(jī)設(shè)備進(jìn)入廣播狀態(tài),使周圍作為主機(jī)的藍(lán)牙設(shè)備可以搜索并與其連接。一旦建立連接,傳感器節(jié)點(diǎn)的射頻部分將以固定間隔時(shí)間進(jìn)行無(wú)線數(shù)據(jù)通信;若超出規(guī)定時(shí)間無(wú)數(shù)據(jù)通信,節(jié)點(diǎn)則根據(jù)低功耗藍(lán)牙通信協(xié)議認(rèn)為其與主機(jī)設(shè)備之間的通信連接已經(jīng)斷開(kāi)。傳感器自身根據(jù)程序設(shè)計(jì)進(jìn)行“休眠-采集、運(yùn)算”的工作狀態(tài)循環(huán),采集結(jié)束立即將數(shù)據(jù)邏輯運(yùn)算(取平均值)后寫入藍(lán)牙設(shè)備的數(shù)據(jù)存儲(chǔ)器中,在下一次無(wú)線數(shù)據(jù)通信進(jìn)行時(shí)發(fā)送給主機(jī)設(shè)備。
RX為接收;TX為發(fā)送
通過(guò)以上描述可以發(fā)現(xiàn),若認(rèn)為設(shè)備在休眠狀態(tài)下功耗優(yōu)化得當(dāng),I1和I2比I3要高出3、4個(gè)數(shù)量級(jí),因此可認(rèn)為傳感器節(jié)點(diǎn)的平均功耗主要由無(wú)線數(shù)據(jù)通信和傳感器采集、計(jì)算導(dǎo)致。即使考慮到休眠狀態(tài)下存在漏電流,I1和I2也要高出1到2個(gè)數(shù)量級(jí),是設(shè)備功耗的主要形成因素。為此,這里自定義了傳感器設(shè)備的無(wú)線數(shù)據(jù)吞吐率和工作占空比兩個(gè)關(guān)鍵參數(shù)。其中,WDT為設(shè)備在單位時(shí)間內(nèi)發(fā)送一定的數(shù)據(jù)字節(jié)所占用的時(shí)間,其表達(dá)式如式(1)所示;ODC為設(shè)備在單位時(shí)間內(nèi)采集、運(yùn)算所占用的時(shí)間,其表達(dá)式如式(2)所示。
(1)
(2)
式中:TRF和Twork分別為傳感器節(jié)點(diǎn)兩個(gè)進(jìn)程上的循環(huán)周期;Rrate為藍(lán)牙的傳輸速率;D為節(jié)點(diǎn)在單無(wú)線通信周期內(nèi)發(fā)送的字節(jié)數(shù);twork為節(jié)點(diǎn)在單采集運(yùn)算周期內(nèi)工作的時(shí)長(zhǎng)??紤]到設(shè)備節(jié)點(diǎn)的低功耗要求,WDT和ODC在實(shí)際設(shè)備中應(yīng)該遠(yuǎn)小于1,表明節(jié)點(diǎn)大部分時(shí)間處于休眠狀態(tài)。
根據(jù)基本物理定義,最終一般無(wú)線傳感器設(shè)備的一般功耗模型可以用式(3)表示,其中P為設(shè)備節(jié)點(diǎn)的平均功耗,Vcc為節(jié)點(diǎn)的供電電壓,SLEEP則為設(shè)備節(jié)點(diǎn)的休眠占空比。
P=Vcc(WDTI1+ODCI2+SLEEPI3)
(3)
SLEEP=1-WDT-ODC
(4)
表1給出了考慮漏電流,即設(shè)備節(jié)點(diǎn)休眠期間模塊GPIO口未設(shè)置成低電平,在3種典型供電電壓Vcc下,功耗電流I1、I2、I3的值。以此為基礎(chǔ),圖3討論了無(wú)線傳感器設(shè)備在不同WDT和ODC條件下,平均功耗P的變化。需要說(shuō)明的是,根據(jù)所提供的技術(shù)手冊(cè)可知SHT30模塊單次采集數(shù)據(jù)所需的時(shí)間為4.5 ms,通過(guò)程序設(shè)計(jì)重復(fù)采集的次數(shù),同時(shí)忽略處理器邏輯運(yùn)算所需的時(shí)間,即可知單采集運(yùn)算周期內(nèi)節(jié)點(diǎn)的工作時(shí)間twork,繼而得到ODC的值;單無(wú)線通信周期內(nèi)發(fā)送的字節(jié)數(shù)D可以通過(guò)程序設(shè)置,因此也可得到WDT的值。
表1 不同工作電壓下節(jié)點(diǎn)各部分功耗電流
由圖3可知,當(dāng)工作電壓Vcc為3.3 V時(shí),所述傳感器設(shè)備的理論平均功耗可高達(dá)40 mW,表明WDT和ODC接近1時(shí),設(shè)備平均功耗較高。而當(dāng)WDT和ODC趨向0時(shí),由于漏電流存在,節(jié)點(diǎn)大約有不低于1 mW的平均功耗。受上述兩參數(shù)的影響,設(shè)備節(jié)點(diǎn)平均功耗變化范圍達(dá)到了39 mW,這在低功耗的獨(dú)立設(shè)備中相當(dāng)可觀。通過(guò)比較兩幅圖的斜率也可發(fā)現(xiàn),設(shè)備無(wú)線數(shù)據(jù)傳輸對(duì)平均功耗的影響要大于其正常采集、運(yùn)算產(chǎn)生的影響,若在功耗優(yōu)化時(shí)應(yīng)注意優(yōu)先減少無(wú)線數(shù)據(jù)發(fā)送量,例如將一些數(shù)據(jù)的邏輯運(yùn)算下放至傳感器節(jié)點(diǎn),只在主、從設(shè)備之間發(fā)送運(yùn)算結(jié)果和配置信息數(shù)據(jù)。
圖3 3.3 V工作電壓下無(wú)線傳感器節(jié)點(diǎn)的平均功耗與WDT和ODC相關(guān)的變化曲線
根據(jù)前文描述,所開(kāi)發(fā)的無(wú)線傳感器設(shè)備節(jié)點(diǎn)最大工作電壓范圍是2.15~3.8 V,考慮到一般功耗測(cè)試平臺(tái)的易用性[21],這里基于LTC3588-1電源管理芯片和超級(jí)電容器儲(chǔ)能模塊設(shè)計(jì)了一款低成本功耗測(cè)試平臺(tái),如圖4所示。其中儲(chǔ)能模塊由10個(gè)額定電壓2.7 V,標(biāo)稱容量0.5 F的超級(jí)電容器串聯(lián)組成,等效額定電壓達(dá)到27 V,等效容量為0.05 F。該儲(chǔ)能模塊設(shè)計(jì)即滿足了LTC3588-1芯片輸入端的電壓變化需求,又給單體電容器留有了安全余量。LTC3588-1電源管理芯片的輸出端電壓有1.8、2.5、3.3、3.6 V 4種選擇,根據(jù)上述工作電壓范圍,實(shí)際測(cè)試時(shí)用到了后3種直流供電電壓,這也是前文給出的3種典型工作電壓值。
圖4 基于LTC3588-1電源管理芯片開(kāi)發(fā)的功耗測(cè)試平臺(tái)
當(dāng)儲(chǔ)能模塊充電至最大輸入電壓(20 V)時(shí),斷開(kāi)充電用直流穩(wěn)壓電源(KEITHLEY 2260B-30-72),一旦接入到測(cè)試平臺(tái)的無(wú)線傳感器設(shè)備開(kāi)始工作,系統(tǒng)將消耗電能,儲(chǔ)能模塊兩端的電壓值(即LTC3588-1輸入端電壓)將不斷下降,通過(guò)臺(tái)式數(shù)字萬(wàn)用表(KEITHLEY 34410A)和帶有LabVIEW 軟件的計(jì)算機(jī)記錄儲(chǔ)能模塊兩端電壓值隨時(shí)間的的變化曲線,就可以得到系統(tǒng)在這段時(shí)間能消耗電能的具體值,通過(guò)修正儲(chǔ)能模塊自放電、LTC3588-1工作效率引入的誤差,最終即可求得傳感器設(shè)備在這段時(shí)間內(nèi)的平均功耗。功耗測(cè)試平臺(tái)中,臺(tái)式數(shù)字萬(wàn)用表通過(guò)USB 接口連接計(jì)算機(jī),通過(guò)專門設(shè)計(jì)的測(cè)試程序記錄萬(wàn)用表所測(cè)電壓值的變化。該方法與專用功耗測(cè)試儀器相比,在成本上具有極大優(yōu)勢(shì),同時(shí)測(cè)試過(guò)程簡(jiǎn)單方便、精度良好。
圖5為傳感器設(shè)備節(jié)點(diǎn)在不同工作電壓條件下,平臺(tái)計(jì)算機(jī)獲得的儲(chǔ)能模塊兩端電壓值隨時(shí)間的變化曲線。圖5中黑色虛線則為不接入傳感器設(shè)備和電源管理芯片時(shí),儲(chǔ)能模塊受到電荷再分配和自放電現(xiàn)象影響的電壓變化曲線,計(jì)算平均功耗時(shí),將會(huì)以該曲線為誤差修正標(biāo)準(zhǔn),減去電荷再分配和自放電現(xiàn)象的影響。
圖5 典型工作狀態(tài)不同工作電壓下電源管理單元電壓變化對(duì)比
無(wú)線傳感器節(jié)點(diǎn)的平均功耗P計(jì)算公式為
(5)
式(5)中:P′為未考慮到誤差修正時(shí)的功耗;ΔE為儲(chǔ)能模塊中存儲(chǔ)電能的變化量,通過(guò)圖5中曲線給出的數(shù)據(jù)計(jì)算求得,Δt為對(duì)應(yīng)的時(shí)間變化量。
實(shí)際研究中可發(fā)現(xiàn)若Δt為取值為極小的時(shí)間間隔時(shí),還可得到系統(tǒng)的瞬時(shí)功率值。繼續(xù)觀察圖5中的曲線,當(dāng)時(shí)間大于240 s時(shí),儲(chǔ)能模塊電荷再分配基本結(jié)束,自放電現(xiàn)象也因?yàn)閮啥穗妷褐档南陆涤兴鶞p緩。為了避免修正儲(chǔ)能模塊引入的誤差,也可求240 s之后的設(shè)備瞬時(shí)功率再取平均獲得P′的值。對(duì)于LTC3588-1電源管理芯片工作效率引入的誤差,可直接對(duì)照該芯片數(shù)據(jù)手冊(cè)計(jì)算修正,根據(jù)估算的平均輸出電流,芯片在2.5 V輸出電壓下的效率約為78%,3.3 V輸出電壓下約為81%,3.6 V 輸出電壓下約為84%。實(shí)驗(yàn)功耗值均簡(jiǎn)單采用了上述效率值進(jìn)行了修正。
根據(jù)類似圖5的電壓直觀變化曲線,考慮誤差修正,圖6最終給出了無(wú)線傳感器設(shè)備節(jié)點(diǎn)在3種不同WDT、ODC條件和不同工作電壓下,平均功耗的比較圖,可見(jiàn)工作電壓越高,節(jié)點(diǎn)的平均功耗越大。因此,雖然工作電壓較低時(shí)芯片相應(yīng)的耗電電流會(huì)有所增加,但設(shè)備整體的平均功耗還是會(huì)隨著供電電壓的下降而降低。在芯片運(yùn)行的工作電壓范圍內(nèi),為優(yōu)化設(shè)備功耗,可以盡可能降低工作電壓。
圖6 3種典型參數(shù)下不同工作電壓功耗對(duì)比
通過(guò)對(duì)于無(wú)線傳感器智能節(jié)點(diǎn)的軟件修改,設(shè)置不同的WDT、ODC參數(shù)進(jìn)行多次實(shí)驗(yàn),依靠上述測(cè)試方法得到了其實(shí)際功率并將其與相同參數(shù)下理論模型得到的功耗進(jìn)行對(duì)比。根據(jù)不同參數(shù)下實(shí)際實(shí)驗(yàn)測(cè)試,計(jì)算得到的實(shí)測(cè)平均功率與通過(guò)模型帶入?yún)?shù)計(jì)算得到的理論功率的具體對(duì)比數(shù)據(jù)如表2所示。
表2 實(shí)際測(cè)試與模型功耗對(duì)比
根據(jù)不同電壓實(shí)際測(cè)試值與理論模型公式,圖7為在2.5、3.3、3.6 V電壓供電條件下,設(shè)備在WDT和ODC參數(shù)變化時(shí),平均功耗的實(shí)驗(yàn)值和模型理論計(jì)算值。從圖7結(jié)果可以看出,實(shí)驗(yàn)測(cè)試結(jié)果基本符合基于一般功耗模型計(jì)算得到的理論結(jié)果,誤差基本在5%以內(nèi),僅一處結(jié)果最大誤差達(dá)到6.25%。在功耗測(cè)試實(shí)驗(yàn)中,受到低功耗藍(lán)牙通信協(xié)議的約束,傳感器設(shè)備節(jié)點(diǎn)的平均功耗值在1.33~2.20 mW變化。
圖7 3.6 V工作電壓下實(shí)測(cè)與計(jì)算功耗對(duì)比
基于低功耗藍(lán)牙通信協(xié)議開(kāi)發(fā)了一種典型的無(wú)線傳感器設(shè)備節(jié)點(diǎn),可直接獲取周圍環(huán)境的溫、濕度信息及自身的供電電壓值,并將上述信息發(fā)送給主機(jī)設(shè)備直觀顯示出來(lái)。對(duì)傳感器設(shè)備節(jié)點(diǎn)的功率消耗進(jìn)行了討論,針對(duì)無(wú)線獨(dú)立設(shè)備的工作特征,提出了普適性的無(wú)線數(shù)據(jù)吞吐率及工作占空比兩個(gè)基本參數(shù),在此基礎(chǔ)上建立了一般功耗模型,并通過(guò)了實(shí)驗(yàn)驗(yàn)證。研究成果對(duì)一般無(wú)線傳感器設(shè)備的功耗分析及優(yōu)化有一定的指導(dǎo)意義。