制定確保產(chǎn)品達到其目標(biāo)使用壽命的能源預(yù)算可能有點像“魔法”,但有一些相對簡單的技術(shù)可以幫助工程師在性能和功耗之間取得適當(dāng)?shù)钠胶?。第一部分本系列文章簡要介紹了低功耗無線節(jié)點中常見的系統(tǒng)元件,并研究了最常用的能量收集和電池元件的容量和特性。第二部分將提供一種簡單的方法來開發(fā)一階能量預(yù)算,可用于確保預(yù)期的能量收集系統(tǒng)或電池的尺寸適合設(shè)計。隨后將采用一些策略來微調(diào)設(shè)計以延長使用壽命或適應(yīng)可用電源的限制。
定義您的要求
系統(tǒng)及其能量預(yù)算都始于對其預(yù)期任務(wù)、將執(zhí)行的活動以及所需使用壽命的全面定義(圖 1)。需要考慮的一些重要參數(shù)包括:
服務(wù)環(huán)境——系統(tǒng)的使用壽命和工作溫度范圍是多少?
采樣模式/采樣率——設(shè)計應(yīng)該監(jiān)控哪些模擬和數(shù)字輸入,以及多久監(jiān)控一次?哪些輸入是按計劃進行采樣的,哪些輸入是由外部刺激觸發(fā)的?
收集了多少數(shù)據(jù)以及對數(shù)據(jù)應(yīng)用了多少本地處理?
系統(tǒng)是否與其他節(jié)點或主機節(jié)點通信?如果是這樣,是通過有線還是無線鏈接?
系統(tǒng)多久進行一次通信,在這個過程中交換了多少數(shù)據(jù)?
根據(jù)這些要求,工程師可以使用低功耗 MCU 和應(yīng)用所需的任何附加 LDO、RTC/定時器、I/O 或通信電路來開發(fā)初步設(shè)計。

圖 1:確定嵌入式系統(tǒng)各種操作模式的相對功耗是開發(fā)和管理其能量預(yù)算的重要部分(由 Silicon Labs 提供)。
例如,我們將使用基于 Microchip Technologies 的 16 位PIC16LF1826 MCU 的相對簡單的數(shù)據(jù)記錄傳感器(圖 2)。系統(tǒng)規(guī)范要求它每 100 毫秒采樣一次。MCU 在其 RAM 中采集 32 個樣本后,將數(shù)據(jù)寫入外部 EEPROM。系統(tǒng)在樣本組之間等待 50 秒,并用 5 毫秒存儲收集到的數(shù)據(jù)。

圖 2:基于 PIC16 MCU 的簡單數(shù)據(jù)采集系統(tǒng)示意圖(由 Microchip Technologies 提供)。
定義你的電源狀態(tài)
要測量系統(tǒng)的最大動態(tài)功率,請使用示波器監(jiān)測與電源串聯(lián)的分流電阻(通常為 10-100 Ω)兩端的電壓??梢允褂靡粋€簡單的程序使系統(tǒng)進入活動狀態(tài),該程序會在其操作的最活躍階段使用 I/O、內(nèi)存和其他外圍設(shè)備。如果這不可用,則可以通過將每個組件的數(shù)據(jù)表上列出的工作電流額定值加上終端電路或電容負載施加的任何重要負載相加來確定相對準(zhǔn)確的估計值。
如果系統(tǒng)將使用高阻抗電池(例如紐扣電池)或能量收集電源(通常將其電力存儲在薄膜電池中)供電,則了解系統(tǒng)的最大動態(tài)電流尤為重要。這是因為如果系統(tǒng)的最大電流過高,會導(dǎo)致電源內(nèi)部損耗過大。在許多情況下,可以降低系統(tǒng)時鐘速度、收發(fā)器數(shù)據(jù)速率或依次激活和停用各種功能塊,以將峰值電流保持在電源限制范圍內(nèi)。
還必須定義系統(tǒng)的靜態(tài)電流消耗。因為它通常在幾十或幾百 nA 的范圍內(nèi),實際測量可能很困難,但可以根據(jù)處理器和任何其他元件(通常是外部 RTC、LDO 和傳感器)數(shù)據(jù)表中的空閑電流規(guī)格做出有用的估計電子設(shè)備),在系統(tǒng)處于“深度睡眠”模式時將保持活動狀態(tài)。
建立電源配置文件
系統(tǒng)電源配置文件提供了一個結(jié)構(gòu)來查看支持系統(tǒng)的每個操作狀態(tài)(包括睡眠/待機)所需的能量以及它們在每個狀態(tài)中花費的時間。它允許設(shè)計人員選擇基準(zhǔn)電源,并將優(yōu)化工作集中在系統(tǒng)最大的“能量接收器”上。這個相當(dāng)簡單的過程涉及列出設(shè)計的操作狀態(tài)/模式,以及每種模式的功耗和相對持續(xù)時間。例如,圖 2 中系統(tǒng)的操作模式如下表所示(圖 3)。此處顯示的示例沒有數(shù)據(jù)收發(fā)器,因此它只有幾種模式(即睡眠、初始化、讀取傳感器、處理數(shù)據(jù)、存儲數(shù)據(jù)等)。如果附加 I/O 元素,則可以將附加模式合并到配置文件中,
無論它有多少模式,電源配置表都是由以下人員創(chuàng)建的:
列出支持每種狀態(tài)/模式所需的各個系統(tǒng)元素、每個元素的功耗以及它在給定時間段內(nèi)處于該狀態(tài)的相對時間量。如果有可用的工作原型,則可以根據(jù)經(jīng)驗得出功率水平。如果硬件不可用,可以根據(jù)組件數(shù)據(jù)表和系統(tǒng)運行要求進行估算;和
通過將其工作功率乘以在該模式下花費的時間來計算每個狀態(tài)/模式下消耗的總能量。

圖 3:系統(tǒng)電源配置表(由 Microchip Technologies 提供)。
系統(tǒng)功率曲線的數(shù)據(jù)使計算系統(tǒng)在其活動模式下的平均電流變得容易。這是通過將每個操作模式期間消耗的總電荷計算得出的,即 (3200 ms x 0.8 μA) + (0.32 ms x 0.8 μA) + 1.28 ms x 166.5 μA) 并將其除以其模式時間的總和 ( 3206.6 ms),平均電流為 2.788 μA。系統(tǒng)功率曲線還清楚地將縮放操作標(biāo)識為峰值電流為 1.3 mA 的模式(圖 4)。

圖 4:應(yīng)用程序電源配置文件的可視化表示(由 Microchip Technologies 提供)。
注意事項
盡管這種技術(shù)很有用,但重要的是要了解它計算應(yīng)用程序的平均電流,假設(shè)它的喚醒活動遵循一個相當(dāng)可預(yù)測的模式,該模式主要由來自其 RTC、板載計時器或其他定期發(fā)生的提示確定事件。如果應(yīng)用程序的喚醒時間和活動受到非確定性外部刺激的嚴(yán)重影響,例如運動傳感器、模擬比較器輸出或與其他傳感器網(wǎng)絡(luò)元素的交互,則建議根據(jù)驅(qū)動的使用場景開發(fā)功率配置文件系統(tǒng)具有比典型應(yīng)用程序中預(yù)期的更多的活動。在大多數(shù)情況下,這仍然意味著 MCU 將有 99.9% 或更多的時間處于睡眠或低功耗待機模式。
還應(yīng)該注意的是,這種簡化的方法沒有考慮“喚醒時間”,即 MCU 從睡眠模式返回時汲取功率但其時鐘振蕩器還不夠穩(wěn)定以允許執(zhí)行指令的時間段(圖 5)。根據(jù)特定的 MCU 和使用的睡眠模式,這可以在 50 ns 和 1 ms 之間,并且可以占活動周期短的系統(tǒng)中功率預(yù)算的相當(dāng)一部分。但是,這通常只有在系統(tǒng)的喚醒時間超過其活動周期長度的 1/10-1/20 時才值得關(guān)注。

圖 5:在喚醒期間,MCU 在等待其時鐘振蕩器充分穩(wěn)定以允許執(zhí)行程序代碼時消耗功率(由 STMicroelectronics 提供)。
能源考慮
構(gòu)建的一階模型將允許工程師將系統(tǒng)的平均電流消耗與特定能量收集或電池電源的可用能量進行比較。請記住,能量收集系統(tǒng)中的電池尺寸限制需要創(chuàng)造力和創(chuàng)新,以最大限度地提高電源效率(請參閱 TechZone 文章“能量收集設(shè)計中的最佳電源管理技術(shù)”)。
根據(jù)所需的使用壽命和功率要求,工程師可能計劃用能量收集解決方案替換的大多數(shù)電池系統(tǒng)都使用標(biāo)準(zhǔn)堿性或鋰電池,有多種標(biāo)準(zhǔn)外形尺寸/容量可供選擇(圖 6)。

圖 6:常見電池化學(xué)成分的特性。
電池實際可以提供的實際電量取決于許多因素,包括工作溫度和放電速度。由于低功耗嵌入式系統(tǒng)的電流要求相對較低,因此通??梢园踩丶僭O(shè)大部分或全部電池的理論容量都是可用的。對于像 Energizer 3-315這樣的堿性 AA 電池,這通常是 2500-2900 mAh,對于像Energizer 3-3121這樣的 AAA 電池,這通常是 1000-1200 mAh 。
鋰基電池的容量略高,壽命顯著延長(長達 15 年),溫度范圍更廣。紐扣鋰電池可提供 30 mAh (CR1025) 至 600+ mAh ( CR2450 ) 的任何電量,而 Energizer L92 AAA電池可提供 1200 mAh。
平均可用電流 (I A )可以使用以下公式計算:
I A =(總?cè)萘?- 保證金)/總小時數(shù)(服務(wù)年限 x 365x24)
注意 - 如果系統(tǒng)在中等溫度范圍內(nèi)(通常在 0 到 25 攝氏度之間)運行,則等式中的裕度因子 = 0。對于在較溫暖的環(huán)境中運行,電池容量應(yīng)根據(jù)制造商的數(shù)據(jù)進行降額。
例如,如果 CR2450 紐扣鋰電池的使用壽命為 12 年,則它可以支持高達 630 (12x365x24)mA (5.99 μA) 的平均負載。相比之下,典型的 AA 鋰電池的保質(zhì)期為 15 年,可支持 23.78 μA 的平均負載。
識別和調(diào)整主要的電源接收器
您構(gòu)建的電源配置文件現(xiàn)在可用于確定降低系統(tǒng)功耗以延長其使用壽命的機會。由于典型的遙感節(jié)點大部分時間都處于待機/滲透模式,因此通常是通過采用以下策略開始優(yōu)化過程的好地方:
只要可行,請使用睡眠/待機模式,該模式允許使用片上硬件來執(zhí)行自主數(shù)據(jù)收集和存儲,而無需喚醒 MCU。但是,如果數(shù)據(jù)收集周期不頻繁,則在兩次讀數(shù)之間將系統(tǒng)置于完全斷電模式仍可能會節(jié)省更多能量。
對于某些處理器,例如 Energy Micro 的 Gecko 系列和 Silicon Labs C8051F91x 系列,值得考慮在保持 MCU 的 RAM 內(nèi)容完整的待機狀態(tài)和低功耗睡眠狀態(tài)之間的權(quán)衡。通常,RAM 友好型睡眠模式消耗的能量低于從冷啟動恢復(fù)內(nèi)存所需的能量。
工程師的功率配置文件還應(yīng)揭示主動模式操作的一個或多個方面,這些方面可以進行功率優(yōu)化。一些最常見的主動模式能量管理策略包括:
仔細考慮系統(tǒng)時鐘速度對功耗的影響。通常,以更快的速度運行 MCU 可以讓其快速執(zhí)行代碼并在睡眠/待機模式下花費更多時間,從而節(jié)省能源。
要小心,因為如果 MCU 必須經(jīng)?;〞r間等待其他系統(tǒng)元素(I/O、A/D 轉(zhuǎn)換器、內(nèi)存等)完成其任務(wù),則可能會失去任何節(jié)能效果。對于涉及訪問非易失性存儲器(尤其是串行 EEPROM)的操作尤其如此。這些設(shè)備的讀/寫周期的延遲很容易使 MCU 保持清醒的時間比工程師或系統(tǒng)電池想要的時間長得多。
對于這些“長帳篷桿”操作,尋找可以同時運行的其他操作,并在可能的情況下使用專用外設(shè)在 CPU 被占用時執(zhí)行功能。
由于無線電系統(tǒng)通常比 CPU 更耗電(對于 Rx 功能通常在 10 到 20 mA 的量級,對于 Tx 甚至更多),通常最好使用能夠可靠支持的最快數(shù)據(jù)速率系統(tǒng)的鏈路預(yù)算。但是,請注意保持在許多能量收集源和一些電池的有限電流能力范圍內(nèi)。
概括
本文只能作為對能量收支藝術(shù)和科學(xué)的介紹。要了解更多信息,下面提供的參考資料是一個很好的起點。
參考
Microchip 應(yīng)用筆記 AN01416a——“低功耗設(shè)計指南”
Microchip 應(yīng)用筆記 AN1267——“nanoWatt和 nanoWatt XLP 技術(shù):Microchip 低功耗器件簡介”。
Silicon labs 白皮書——“為您的嵌入式應(yīng)用選擇最佳電池”
STMicroelectronics – 技術(shù)文章 #TA0342 –“低功耗 MCU 的準(zhǔn)確功耗估算”
評論