论文标题:Demo: Battery-free TinyML Made Easy with Riotee 中文标题:演示:使用Riotee轻松实现无电池TinyML
作者信息:
- Kai Geissdoerfer,Nessie Circuits,邮箱:kai.geissdoerfer@nessie-circuits.de
- Marco Zimmerling,TU Darmstadt,邮箱:marco.zimmerling@tu-darmstadt.de
论文出处:本文是第22届ACM嵌入式网络传感器系统会议(SenSys '24)的一部分,该会议将于2024年11月4日至7日在中国杭州举行。文章的DOI链接为:https://doi.org/10.1145/3666025.3699419。
摘要: 这篇论文通过一个基于机器学习的热词检测应用,展示了Riotee平台的能力。Riotee是一个开源且商业可用的无电池物联网硬件-软件平台。文章描述了Riotee硬件,包括基础模块、用于轻松固件更新的调试探针,以及几个扩展板,这些扩展板增强了功能,而无需定制设计的印刷电路板(PCB)。演示展示了Riotee设备上的TinyML深度神经网络推理对实时音频录音进行分类。Riotee设备通过蓝牙低功耗(BLE)将分类结果传输给访客的手机。访客还可以观察Riotee软件如何在电源故障的情况下通过逻辑分析器迹线的可视化来检查点和恢复关键状态。
引言: 新的编程抽象、外围设备状态保留解决方案和无线网络解决方案正在扩展无电池设备的能力。大多数现有的方法要么使用没有能量收集的开发板,要么为特定项目需求设计定制的无电池硬件。目前可用的几个通用平台(例如[1][4])适合原型设计,但在灵活性和尺寸上往往需要妥协,并且对于初学者来说可能难以设置。Riotee作为一个开源且商业可用的平台,为原型设计和实际部署提供了一个文档齐全且统一的平台。Riotee板及其堆叠板的选择简化了无电池原型的创建。随附的开源软件只需点击几下即可安装,支持间歇性计算和基本网络功能。在原型设计之后,Riotee板上使用的相同模块可以焊接到定制的PCB上,连同传感器和外围设备,从而开发出紧凑、准备生产的设备。
硬件和软件: Riotee模块包括一个升压充电器,它将能量从连接的收集器转移到板上的电容器。两个比较器监控电容器电压与软件定义的阈值,并在即将发生电源故障时提醒系统。该模块配备了两个通过4线SPI总线连接的完全可编程微控制器,两者共享对系统组件的访问:Nordic Semiconductor nRF52833,它具有64 MHz Cortex-M4 CPU和浮点单元以及低功耗2.4 GHz无线无线电,以及TI MSP430FR5962,它有128 kB的非易失性FRAM以在电源故障期间保留状态。应用程序和网络代码可以在功能强大的nRF52上运行,而MSP430处理非易失性内存,或者MSP430可以运行应用程序代码,同时使用nRF52作为无线协处理器。在待机模式下,模块消耗4 µA。在深度睡眠模式下,它的功耗小于0.1 µA。
Riotee探针允许在编程设备时防止通过编程引脚的漏电流干扰。探针是一个编程拨片,通过模拟开关连接到Riotee模块。在编程期间,开关闭合以向模块提供恒定电压。一旦编程完成,连接被切断,允许设备使用收集到的能量运行。
Riotee板是一个紧凑、用户友好的开发板。它将Riotee模块、Riotee探针电路、一个按钮和一个LED集成到单个PCB中。
三个扩展盾增强了Riotee板的能力。太阳能盾增加了四个小型太阳能板用于能量收集。电容器盾增加了板上的电容。传感器盾具有麦克风、温度传感器、湿度传感器和加速度计。
无电池运行时间。开源Riotee运行时将用户代码作为nRF52上的FreeRTOS任务执行。当Riotee模块的比较器检测到低电容器电压时,一个高优先级系统任务会抢占用户任务,触发上下文切换。FreeRTOS在用户堆栈上存储所有寄存器,系统任务通过SPI将堆栈以及全局和静态变量传输到MSP430的非易失性内存,然后进入低功耗模式。一旦电容器电压超过设定阈值,系统恢复用户任务并继续执行。即使在电源中断后,应用程序状态也会在能量返回后恢复。
演示设置: 访客将看到一个配备了所有三个扩展盾的Riotee板,以及一个智能手机、一个逻辑分析器和一台笔记本电脑。Riotee设备在低功耗模式下运行,监听传感器盾的麦克风。当检测到声音时,设备会唤醒并记录1秒的音频样本。在从音频样本中提取特征后,数据由一个TinyML模型处理,该模型区分两个预定义的关键词:“yes”和“no”。分类结果通过BLE传输到智能手机,智能手机上的应用程序显示结果。访客将被邀请用手覆盖太阳能板以耗尽电容器并触发电源故障。访客可以在笔记本电脑上的逻辑分析器的实时图表上观察到电源故障。一旦太阳能板被揭开,设备会自动从非易失性内存中恢复应用程序状态。访客随后可以在智能手机上验证,在推理完成后,即使在电源中断后,也显示了正确的结果。