随着物联网作为一个行业的成熟,很明显,大多数用例将涉及电池供电的设备,这带来了一系列独特的挑战。多达70%的物联网项目可能属于这一类,它们蓬勃发展的机会将完全取决于延长设备寿命的节能策略。
节能是一个难题
节能需要许多奇怪的部分,必须单独仔细调整,然后协调在一起以创建一个整体。它需要采用端到端方法来规划和开发能源优化解决方案。从一开始,就必须为用例制定非常详细的计划,并为一些关键问题制定明确的答案。
这些是每个开发人员在采取任何行动之前应该问的关键问题:
用例是什么?
设备需要持续多长时间?一周,一个月,一年,十年?
数据会丢失吗?是否需要重新传输?
数据需要多久传输一次?
有效载荷有多大?
电池的最大物理尺寸是多少?
是否可以利用充电机制(例如,太阳能或手动电池交换)?
每个用例都是独一无二的,可以根据上述答案调整无数的排列,但有几个一般建议应该适用于几乎任何物联网项目。
以下是最重要的建议:
一切都从物联网项目的硬件设置开始。在微控制器(MCU)级别,硬件应几乎完全满足用例的要求。显然,功率不足的硬件设置不起作用,但功能过大的硬件意味着更高的成本以及浪费的能源。伟大是好的敌人,所以不要超支或购买硬件,因为它很划算。几个好的MCU可能是STM32或ESP32,但这完全取决于用例。
建议尽可能将CPU / MCU置于深度睡眠模式。大多数现代MCU已经支持深度睡眠模式,但仔细检查所选组件是否支持它很重要。
同样在硬件方面,使用NB-IoT或LTE-M的蜂窝调制解调器支持释放辅助指示(RAI)、电源安全模式(PSM)和扩展不连续接收(eDRX)也很重要。请注意,这些可能并非在所有国家/地区或通过所有运营商提供,因此请务必检查每个推出方案。在能源优化方面,NB-IoT通常被推荐超过其他承载,但对于移动产品,LTE-M可能是更好的选择。
谈到固件,尤其是操作系统,是否有不需要在后台运行的进程或线程?确保上面没有任何东西会缓慢而肯定地耗尽电池电量。要找出哪些进程可以禁用,请查看正在运行的进程的完整列表并研究每个进程的用途。如果用例不需要它,请将其关闭。
还需要考虑固件的业务逻辑。通过查看传感器值并确定发送频率来优化数据处理非常重要。区分从源记录传感器值的频率,以及将这些测量值发送到云系统的频率。通常不需要同时录制或发送它们,因此一个好的调整是经常录制它们,在本地缓冲并批量发送以减少无线电广播时间。或者仅发送值的平均值。
尝试在发送之前压缩消息负载。与其一遍又一遍地发送冗长而明确的 JSON 对象,不如将数据压缩为二进制格式来节省能源。一个很好的例子是二进制转换语言 (BCL),它使用一个模板来指示如何将 JSON 转换为二进制,反之亦然。当然,云端点在收到数据时必须解压数据才能获取原始消息。
在构建能源优化产品时,优化的数据传输协议中有一些选择可以产生很大的不同:Protobuf代替JSON,CoAP代替MQTT,NB-IoT代替LTE。
在开发过程中,必须进行测量,然后再次测量。创建一个科学的环境来进行测试,确保其可重复性。尝试将条件设置为尽可能接近真实场景。如果可能,请使用最终硬件,而不是开发工具包。
显然,构建能源优化的物联网产品需要做很多工作,并且需要一定的心态来防止它成为事后的想法。优化必须从一开始就考虑在项目中,从硬件到固件再到与云的连接的每一层。这可能是一个痛苦,但对能源优化的关注是物联网项目的真正成败决定。
审核编辑:郭婷
-
mcu
+关注
关注
146文章
17008浏览量
350344 -
物联网
+关注
关注
2903文章
44296浏览量
371386 -
调制解调器
+关注
关注
3文章
850浏览量
38783
发布评论请先 登录
相关推荐
评论