ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

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

2022-01-30 14:30:17  阅读:314  来源: 互联网

标签:RT 50mA 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闪烁,你直接给我关了,我不干事情了?不关闭,能否降低整机功耗?

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

  • 各个疑难如何排查?如何成为功耗管理专业人士?敬请期待…

标签:RT,50mA,Thread,管理,功耗,电源,电流,电池
来源: https://blog.csdn.net/tcjy1000/article/details/122752644

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有