0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

AliOS Things電源管理框架怎么滿足物聯(lián)網設備低功耗需求

電子設計 ? 2018-10-29 08:57 ? 次閱讀

AliOS Things電源管理框架使用介紹,主要針對物聯(lián)網設備低功耗需求。

一、電源管理框架簡介

電源管理框架的目的在于節(jié)約CPU的功耗。傳統(tǒng)上,當操作系統(tǒng)處于空閑狀態(tài)時,比如所有用戶任務和系統(tǒng)任務處于阻塞狀態(tài),將執(zhí)行idle task。idle task的通常做法是一個while(1)空循環(huán),從匯編視角看是不斷執(zhí)行跳轉指令,也就是說當操作系統(tǒng)空閑時,CPU將處于空轉狀態(tài)。使能電源管理框架后,當系統(tǒng)進入idle task后,將設置CPU進入低功耗狀態(tài),從而節(jié)省CPU的功耗。

AliOS Things電源管理框架具有如下特點:

(1)應用配置電源管理框架并添加初始化代碼后,整個框架的運行對應用透明,用戶無需為了支持電源管理框架而修改應用代碼;

(2)支持多級低功耗狀態(tài);

在某些MCU上,根據不同的節(jié)電程度和喚醒時間分為多級睡眠,電源管理框架提供了對該特性的支持,在進入低功耗狀態(tài)時將根據睡眠時間和節(jié)電程度選擇最佳睡眠等級。

(3)支持tickless機制

當MCU決定進入低功耗狀態(tài)時,將關閉系統(tǒng)tick中斷,并在醒來的時候恢復系統(tǒng)tick中斷并補償睡眠過程中丟失的tick數(shù)。這種策略通過減少系統(tǒng)時鐘中斷來最大程度降低系統(tǒng)空閑時的功耗。

(4)支持精簡的低功耗模式

當MCU進入低功耗后,不關閉系統(tǒng)tick中斷,系統(tǒng)tick也能喚醒系統(tǒng)。它的優(yōu)點是實現(xiàn)簡單,但當系統(tǒng)長時間空閑時,由于系統(tǒng)時鐘頻繁喚醒系統(tǒng),不利于節(jié)能。

在某基于nrf52832 MCU的開發(fā)板上測試電源管理框架的運行效果如下:

在普通運行模式下nrf52832 MCU的平均運行電流在4mA左右,在添加電源管理模塊后MCU的電流測試如下表所示:

從測試結果可以看出,在對功耗敏感的系統(tǒng)上,比如依靠電池供電的系統(tǒng),非常有必要使用電源管理框架,它可顯著降低系統(tǒng)功耗,增加系統(tǒng)待機時間。

二、應用配置(為應用添加低功耗支持)

應用若要使用電源管理框架,需進行如下配置:

(1)應用目錄的.mk文件中添加對電源管理模塊的依賴,示例:

GLOBAL_DEFINES += RHINO_CONFIG_CPU_PWR_MGMT=1

$(NAME)_COMPONENTS := rhino/pwrmgmt

(2)在應用初始化函數(shù)中(比如application_start(int argc, char *argv[]))調用電源管理模塊初始化函數(shù)。

cpu_pwrmgmt_init();

三、示例應用(app/example/pwr_test)

目前AliOS Things 2.0版本在developerkit和PCA10040平臺上對電源管理框架進行了適配,可用如下命令編譯示例應用并下載到develoerkit上運行:

aos make pwr_test@developerkit

aos upload pwr_test@developerkit

示例應用創(chuàng)建了2個任務demo1和demo2。demo1的主要邏輯是一個while循環(huán):count1增1,同時打印count1和g_idle_count[0]的值,然后睡眠1秒。demo2的主要邏輯也是一個while循環(huán):count2增1,同時打印count2的值,然后睡眠2秒。

其中g_idle_count[0]是一個全局變量,idle任務在執(zhí)行時會累加該值。

若沒有開啟低功耗模塊,那么當demo1和demo2處于睡眠狀態(tài)時,idle任務持續(xù)執(zhí)行,g_idle_count[0]不斷增加。輸出示例如下:

count1 = 0, idle = 0

count2 = 0

count1 = 1, idle = 2347298

count1 = 2, idle = 4693421

count2 = 1

count1 = 3, idle = 7036926

count1 = 4, idle = 9383049

count2 = 2

count1 = 5, idle = 11726554

count1 = 6, idle = 14072465

開啟低功耗時,當demo1和demo2處于睡眠狀態(tài)時,idle任務執(zhí)行g_idle_count[0]增1后,調用cpu_pwr_down()進入低功耗狀態(tài)。因此系統(tǒng)每次進入空閑狀態(tài),g_idle_count[0]只增加1。輸出示例如下:

count1 = 0, idle = 0

count2 = 0

count1 = 1, idle = 1

count2 = 1

count1 = 2, idle = 3

count1 = 3, idle = 4

count2 = 2

count1 = 4, idle = 6

count1 = 5, idle = 7

說明:如果條件允許,直接測試功耗,比如測試MCU的電流,效果更直觀。

四、電源管理框架的適配

由于電源管理框架的運行依賴于硬件能力,因此在適配時首先要分析目標硬件是否有能力支持,然后要基于硬件能力為電源管理框架提供相關驅動。

4.1 硬件要求

要想支持電源管理框架,目標MCU需要支持如下特性:

(1)至少支持一種低功耗模式。在該低功耗模式下,RAM寄存器的值能夠被維持。

(2)在低功耗模式下,存在可用的定時器,且該定時器能喚醒系統(tǒng)。在tickless機制下,該定時器用于計算低功耗時間,以補償系統(tǒng)時鐘。

4.2 適配接口

為了支持電源管理模塊需完成如下接口適配:

注:可參考developerkit和PCA10040平臺上的適配示例(pwrmgmt_hal目錄)。

作者:云棲社區(qū) jianniu

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 電源管理
    +關注

    關注

    115

    文章

    6100

    瀏覽量

    143381
  • 物聯(lián)網

    關注

    2894

    文章

    43316

    瀏覽量

    366529
收藏 人收藏

    評論

    相關推薦

    國產化低功耗窄帶聯(lián)網無線通訊方案_ZETA技術

    低功耗廣域網技術協(xié)議標準,具有覆蓋范圍廣、服務成本低、能耗低等特點。這些特性使得ZETA LPWAN模組非常適合聯(lián)網環(huán)境下廣域范圍內數(shù)據交換頻次低、連接成本低、適用復雜環(huán)境的連接需求
    的頭像 發(fā)表于 09-20 17:26 ?110次閱讀
    國產化<b class='flag-5'>低功耗</b>窄帶<b class='flag-5'>物</b><b class='flag-5'>聯(lián)網</b>無線通訊方案_ZETA技術

    基于聯(lián)網設備管理

    聯(lián)網設備管理的重要性日益凸顯,設備數(shù)量激增帶來數(shù)據泄露風險。加強設備安全性、軟件升級與修復、身份驗證和互操作性是關鍵。
    的頭像 發(fā)表于 09-10 11:04 ?401次閱讀
    基于<b class='flag-5'>物</b><b class='flag-5'>聯(lián)網</b>的<b class='flag-5'>設備管理</b>

    什么是聯(lián)網技術?

    什么是聯(lián)網技術? 聯(lián)網技術(Internet of Things, IoT)是一種通過信息傳感設備
    發(fā)表于 08-19 14:08

    梯云聯(lián)LoRa網關:聯(lián)網時代的遠距離低功耗通信先鋒

    聯(lián)網(IoT)技術日新月異的今天,高效、穩(wěn)定且低功耗的數(shù)據傳輸設備成為了推動行業(yè)發(fā)展的關鍵。深圳梯云聯(lián)推出的LoRa網關,正是這樣一款
    的頭像 發(fā)表于 07-25 09:59 ?169次閱讀

    請問如何使用微控制器優(yōu)化電池供電的聯(lián)網設備功耗?

    如何使用微控制器優(yōu)化電池供電的聯(lián)網設備功耗
    發(fā)表于 07-23 07:09

    NB-IoT設備天線靜電浪涌保護方案解析

    窄帶聯(lián)網(Narrow Band Internet of Things,NB-IoT)是一種為聯(lián)網
    發(fā)表于 03-05 12:30 ?298次閱讀
    NB-IoT<b class='flag-5'>設備</b>天線靜電浪涌保護方案解析

    聯(lián)網操作系統(tǒng)的內涵及主要類型

    聯(lián)網操作系統(tǒng)需要優(yōu)化資源配置與管理,確保低功耗運行并滿足嚴格的實時性要求,這對電池供電或能源受限的設備
    的頭像 發(fā)表于 02-21 11:34 ?817次閱讀

    低功耗藍牙技術的特點 低功耗藍牙如何實現(xiàn)低功耗?

    低功耗藍牙技術是一種優(yōu)化的藍牙技術,專為滿足低功耗需求而設計。它通過采用一系列節(jié)能措施和技術,實現(xiàn)了更低的功耗消耗,延長了
    的頭像 發(fā)表于 02-07 16:49 ?1532次閱讀

    什么是窄帶聯(lián)網?窄帶聯(lián)網和寬帶聯(lián)網有什么區(qū)別?

    什么是窄帶聯(lián)網?窄帶聯(lián)網和寬帶聯(lián)網有什么區(qū)別? 窄帶
    的頭像 發(fā)表于 02-04 14:48 ?3500次閱讀

    聯(lián)網設備管理平臺如何實現(xiàn)?如何發(fā)揮作用?

    隨著科技技術的飛速發(fā)展,各式各樣的聯(lián)網設備已經深入到我們生活工作的方方面面。小到智能家居,大到工業(yè)自動化,聯(lián)網
    的頭像 發(fā)表于 12-23 10:45 ?519次閱讀
    <b class='flag-5'>物</b><b class='flag-5'>聯(lián)網</b><b class='flag-5'>設備管理</b>平臺如何實現(xiàn)?如何發(fā)揮作用?

    桂花網藍牙網關:功能強大、應用廣泛的聯(lián)網連接設備

    的功能及其在不同領域的應用場景。 一、桂花網藍牙網關的功能特點 藍牙5.0兼容:桂花網藍牙網關支持最新的低功耗藍牙5.0標準,提供了更高的傳輸速度和更低的功耗,為聯(lián)網
    發(fā)表于 12-12 16:06

    淺談聯(lián)網電源管理

    為了完全表征聯(lián)網設備功耗,必須在通常遇到的所有操作條件下進行測量。由于聯(lián)網
    的頭像 發(fā)表于 12-07 09:58 ?626次閱讀

    低功耗WiFi模塊的技術發(fā)展

    隨著聯(lián)網的迅速發(fā)展,對于低功耗設備和技術的需求日益增加。低功耗WiFi模塊應運而生,為連接大量
    的頭像 發(fā)表于 11-02 16:34 ?601次閱讀

    滿足工業(yè)聯(lián)網應用需求低功耗Wi-Fi無線連接解決方案

    當前的工業(yè) 4.0 正在改變工業(yè)領域的發(fā)展,并創(chuàng)造了數(shù)萬億美元的新市場機會,其中的節(jié)能制造、供應鏈和資產密集型場所,均可以用工業(yè)聯(lián)網( IIoT )智能解決方案來實現(xiàn)。用于 IIoT 連接的低功耗
    的頭像 發(fā)表于 10-30 19:45 ?618次閱讀
    <b class='flag-5'>滿足</b>工業(yè)<b class='flag-5'>物</b><b class='flag-5'>聯(lián)網</b>應用<b class='flag-5'>需求</b>的<b class='flag-5'>低功耗</b>Wi-Fi無線連接解決方案

    Banana Pi 開源硬件基于ESP32-S3開發(fā)的聯(lián)網開發(fā)板系列

    設計,深度睡眠模式下功耗僅為10uA。 支持USB和外接3.7V鋰電池兩種供電方式,可實現(xiàn)雙電源下自動切換電源功能,并支持USB充電方式。體積小巧,接口方便,上手簡單,可直接應用于
    發(fā)表于 09-27 17:10