IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> RT-Thread功耗调优项目实战 - 认识功耗 -> 正文阅读

[嵌入式]RT-Thread功耗调优项目实战 - 认识功耗

RT-Thread功耗调优项目实战 - 认识功耗

基础:RT-Thread PM管理基础概念 系列

进阶:RT-Thread PM管理知识进阶 系列

上手:功耗管理与调优经验分享 系列

应用:PM组件应用与经验分享 系列

前言

  • 之前根据实际项目的功耗管理抽空写了几篇功耗管理相关的文章,但感觉还没有讲透功耗是个什么,怎么按步骤进行管理
  • 直观的感受,如手机充满用了一天,发现电量低于50%,晚上要接着充电吧,否则第二天电量估计不足,这个50%、充满100%是个什么概念?
  • 引入实际的项目并讲解功耗管理(功耗调优)为大势所趋
  • 一言以蔽之,前面的文章只是理论与基础,质量不太高
  • 有了前面的文章的理论与基础,相信在电源管理、功耗调优方面会有一点方向感

实践与实战

  • 假如项目使用一个低功耗的MCU,通过查看MCU的手册,如STM32L系列,直观上会认为让STM32L475本身进入低功耗模式,实现电源模式切换,功耗管理就完成了
  • 但是没想到,实际中功耗管理起来相当的复杂,并且管理的是硬件与业务,不仅仅是MCU本身的功耗。
  • 大型的团队里,与功耗相关的小组有:硬件部、测试部、BSP(驱动部)、OS(系统部)、UI(应用部)、BMS(电池管理)、项目部、策划部(产品定义),等等。
  • 大型项目中的功耗管理不再是:自扫门前雪,由于牵涉的部门与成员很多,管理起来很麻烦。
  • 功耗管理不仅是需要熟悉PM框架(软件)的使用,还需要各种电源仪器仪表(直流电源、万用表),不仅需要懂MCU的电源管理,还要懂各个片外外设,要熟悉硬件(不只是了解),还有熟悉软件
  • 功耗管理一般是个冷板凳的活,很少有公司专门投入较大的人力与时间去研究去管理,干好了没什么可说的,干不好的话,呵呵。

理论结合实战

  • 需要用数据与事实来讲解,这里使用STM32L475-Pandora 开发板,讲解一下功耗相关的数据
  • 工具:电源分析仪一台,或者可以使用Power Monitor等,用途为:供电电源分析,在这里,电源分析是重要的。
  • PC端使用电源分析仪带的电源分析工具,图形化查看功耗数据(电压、时间、电流)
  • 打仗,需要了解打的是谁,功耗管理也是一样,管的是什么?做到什么程度才算好。
  • 开发板:STM32L475-Pandora,其他电路板也可以
  • 万用表:测量电压,测量某路的电流
  • 另外根据情况配置电烙铁、杜邦线、开发板下载工具、USB转串口工具等

接线

  • 这里有点讲究:要了解或熟悉硬件,否则接错了很可能把板子烧掉,或者测量的不准确(不是主电源),严重影响下一步的电源分析与管理。
  • 为了防止烧掉板子需要了解板子的电压供电范围,通过电路板的原理图,可以查找电源的【主入口】
  • 如STM32L475-Pandora开发板,电源入口是两个USB座,5V的电源来自USB VBUS,有5V的扩展排针,可以作为整板供电,但接线时需要注意电压要正确,为5V,电源的正负极接对。
  • 假如你接的位置不正确,如接的是3.3V,或测量功耗时还接着USB线供电,测量的数据会千差万别,用来测量功耗,会带来很多烦恼。
  • 使用外部电源分析仪供电时,不要再使用USB供电,这样电源分析仪测量的即为整机电流
  • 说到整机电流,就是这个板子的所有电流,全部由一个电源入口进入。
  • 在测量整机功耗时,如果板子使用电池,需要先取下电池,引出电池的正、负极两根电源线,使用外部的电源作为假电池供电,注意使用颜色区分电源的正负极,防止接反损坏电路板。

2022-01-30_110024.png

2022-01-30_110536.png

2022-01-30_110622.png

功耗测量

  • 功耗数据一般由:供电电压、供电电流、持续时间组成,分为瞬时功耗平均功耗
  • 瞬时功耗一般为当前实时(短时间)的平均功耗
  • 平均功耗一般只一段较长时间的功耗,如10S内、10min内,1小时或1天内的平均功耗
  • 功耗的单位:毫安(mA)、微安(uA)、毫安时(mAh)等,为何不包括电压?因为电压变化不大(尤其是使用电池场景),某些场景下,有电压,但是没有电流,不产生功耗。

2022-01-30_101819.png

  • 开发板默认功耗:一个LED的功耗
    2022-01-30_102600.png

小疑问

  • 项目给的功耗目标是待机 100uA,这里 50mA,功耗算不算合格?

100uA 是 0.1mA, 跟50mA比,当然是50mA大了,所以功耗不合格

  • 项目给的电池 100mAh,我用 50mA的放电电流,可以放电多久?一天?

放电时间:电量 / 放电电流 = 使用时间,这里:100mAh / 50mA = 2h,只能放电 2小时,注意一般的电池,实际可以使用的电量不可能100%,普通锂电池的有效电量为:85%~95%,所以实际使用2个小时都达不到。

  • 100mAh 与 100mA的区别是什么?

mAh是电量,mA是电流。如100mA放电,100mAh可以放电1h,如用10mA放电,不考虑电池自放电与实际有效容量的情况下,理论上就可以放电10h

  • 手机刚买回来,能用续航两天,一年之后,却用不了一天?

这是电池的特性,越用越不耐用,反复充电影响电池的寿命与容量(容量越来越小)

小结

  • 电源(功耗)管理需要懂的东西,不只是PM框架或MCU本身,要去了解更多的东西
  • 当前的开发板50mA的电流都干什么了,我代码里只有一个LED闪灯啊。

接下来讲解:如何降低这个功耗,这也是功耗调优的意义所在:降低功耗,提高续航

  • LED关了确实降低了功耗,可是电流还是有50mA左右,怎么达成uA级的目标?

接下来讲解:功耗拆拆解,找到功耗大头

  • 假如我的业务就是LED闪烁,你直接给我关了,我不干事情了?不关闭,能否降低整机功耗?

接下来讲解:什么是间歇性工作,如何在完成工作的同时降低功耗

  • 各个疑难如何排查?如何成为功耗管理专业人士?敬请期待…
  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2022-02-01 20:46:36  更:2022-02-01 20:48:05 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 10:44:41-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码