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

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

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

圖 3:系統電源配置表(由 Microchip Technologies 提供)。
系統功率曲線的數據使計算系統在其活動模式下的平均電流變得容易。這是通過將每個操作模式期間消耗的總電荷計算得出的,即 (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。系統功率曲線還清楚地將縮放操作標識為峰值電流為 1.3 mA 的模式(圖 4)。

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

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

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