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

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

3天內(nèi)不再提示

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

電子設(shè)計 ? 2018-10-29 08:57 ? 次閱讀

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

一、電源管理框架簡介

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

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

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

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

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

(3)支持tickless機制

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

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

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

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

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

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

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

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

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

GLOBAL_DEFINES += RHINO_CONFIG_CPU_PWR_MGMT=1

$(NAME)_COMPONENTS := rhino/pwrmgmt

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

cpu_pwrmgmt_init();

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

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

aos make pwr_test@developerkit

aos upload pwr_test@developerkit

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

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

若沒有開啟低功耗模塊,那么當(dāng)demo1和demo2處于睡眠狀態(tài)時,idle任務(wù)持續(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

開啟低功耗時,當(dāng)demo1和demo2處于睡眠狀態(tài)時,idle任務(wù)執(zhí)行g(shù)_idle_count[0]增1后,調(diào)用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的電流,效果更直觀。

四、電源管理框架的適配

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

4.1 硬件要求

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

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

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

4.2 適配接口

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

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

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

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

    關(guān)注

    115

    文章

    6188

    瀏覽量

    144730
  • 物聯(lián)網(wǎng)
    +關(guān)注

    關(guān)注

    2912

    文章

    44855

    瀏覽量

    375473
收藏 人收藏

    評論

    相關(guān)推薦

    國產(chǎn)固態(tài)繼電器如何滿足聯(lián)網(wǎng)應(yīng)用的需求

    聯(lián)網(wǎng)(IoT)的快速發(fā)展徹底改變了從智能家居到工業(yè)自動化等各個行業(yè)。由于聯(lián)網(wǎng)系統(tǒng)需要高效、可靠且緊湊的組件來處理眾多傳感器、執(zhí)行器和通信設(shè)備
    的頭像 發(fā)表于 01-03 15:57 ?137次閱讀

    LDO在聯(lián)網(wǎng)中的角色 LDO電源在汽車電子中的應(yīng)用

    LDO在聯(lián)網(wǎng)中的角色 聯(lián)網(wǎng)(IoT)是一個由各種設(shè)備和傳感器組成的網(wǎng)絡(luò),它們能夠收集、交換和分析數(shù)據(jù),以實現(xiàn)智能化的決策和自動化。在
    的頭像 發(fā)表于 12-13 09:23 ?317次閱讀

    聯(lián)網(wǎng)學(xué)習(xí)路線來啦!

    聯(lián)網(wǎng)學(xué)習(xí)路線來啦! 聯(lián)網(wǎng)方向作為目前一個熱門的技術(shù)發(fā)展方向,有大量的人才需求,小白的學(xué)習(xí)入門路線推薦以下步驟。 1.了解
    發(fā)表于 11-11 16:03

    如何測試聯(lián)網(wǎng)設(shè)備功耗

    如何測試聯(lián)網(wǎng)設(shè)備功耗聯(lián)網(wǎng)(IoT)將涵蓋我們?nèi)粘I畹母鱾€方面,因為它使數(shù)十億的物品能夠隨
    的頭像 發(fā)表于 10-11 08:05 ?525次閱讀
    如何測試<b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b><b class='flag-5'>設(shè)備</b>的<b class='flag-5'>功耗</b>

    聯(lián)網(wǎng)系統(tǒng)中常用的低功耗自組網(wǎng)無線傳輸方案(三)_藍牙芯片篇

    低功耗藍牙(BLE)芯片,能夠在保證正常通信的前提下顯著減少電量消耗,從而延長物聯(lián)網(wǎng)設(shè)備的使用時間。這種低功耗特性對于依賴電池供電的
    的頭像 發(fā)表于 09-29 17:11 ?562次閱讀
    <b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b>系統(tǒng)中常用的<b class='flag-5'>低功耗</b>自組網(wǎng)無線傳輸方案(三)_藍牙芯片篇

    聯(lián)網(wǎng)系統(tǒng)中TCP低功耗產(chǎn)品長連接狀態(tài)下降低功耗功能的實現(xiàn)方案

    01 ?概述 TCP相關(guān)內(nèi)容參考文章《聯(lián)網(wǎng)行業(yè)中TCP通信協(xié)議介紹以及如何實現(xiàn)》 02 ?功耗的組成 低功耗技術(shù)就是一系列的降低功耗的技術(shù)
    的頭像 發(fā)表于 09-29 11:50 ?480次閱讀
    <b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b>系統(tǒng)中TCP<b class='flag-5'>低功耗</b>產(chǎn)品長連接狀態(tài)下降<b class='flag-5'>低功耗</b>功能的實現(xiàn)方案

    聯(lián)網(wǎng)系統(tǒng)低壓差低功耗電源方案分享_LDO詳解

    聯(lián)網(wǎng)系統(tǒng)中為什么要使用線性電源芯片(LDO) 在聯(lián)網(wǎng)系統(tǒng)中,使用線性電源芯片(LDO,Low
    的頭像 發(fā)表于 09-27 16:45 ?1226次閱讀
    <b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b>系統(tǒng)低壓差<b class='flag-5'>低功耗電源</b>方案分享_LDO詳解

    引領(lǐng)智能未來:英銳恩科技的國產(chǎn)低功耗單片機ENMCU

    訪問詳細的技術(shù)文檔和示例代碼,快速搭建自己的開發(fā)環(huán)境。此外,英銳恩還定期舉辦技術(shù)培訓(xùn)和線上講座,與開發(fā)者分享最新的行業(yè)趨勢和應(yīng)用案例。 隨著聯(lián)網(wǎng)和智能設(shè)備的快速發(fā)展,對低功耗、高性
    發(fā)表于 09-26 17:16

    基于聯(lián)網(wǎng)設(shè)備管理

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

    什么是聯(lián)網(wǎng)技術(shù)?

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

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

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

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

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

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

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

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

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

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

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