1、在PSoC 6上运行TinyML的意义

  • 低功耗优势:PSoC6系列微控制器具有超低功耗的特点,适用于电池供电的设备。在边缘设备上运行TinyML模型,可以利用PSoC6的低功耗优势,实现长时间的连续工作,从而延长设备的电池寿命。
  • 实时数据处理:在PSoC6上直接运行TinyML模型,可以实现数据的实时处理,无需将数据传输到云端进行处理。这对于需要即时响应的应用场景(如健康监测、工业控制等)尤其重要。
  • 隐私和安全:数据在本地处理可以提高用户隐私和数据安全性。无需将敏感数据上传到云端,减少了数据泄露和隐私侵害的风险。
  • 成本效益:边缘设备本地处理可以减少对云计算资源的依赖,从而降低相关的数据传输和云服务费用。对于大规模部署的物联网设备,这将带来显著的成本节约。
  • 灵活性和可定制性:PSoC6具有可编程的模拟和数字外设,结合TinyML可以为各种特定应用进行定制优化。例如,PSoC6可以利用其丰富的I/O接口与传感器直接交互,进行本地数据预处理和特征提取,再将处理后的数据输入TinyML模型进行预测和决策。
  • 提高设备智能化:通过在PSoC6上运行TinyML,边缘设备可以具备更强的智能化能力,从而实现自主决策和更高效的操作。这在智能家居、智能农业、工业物联网等领域具有广泛应用前景。
  • 开发生态系统支持:PSoC6的开发环境(如Cypress的ModusToolbox)提供了丰富的库和工具,支持开发者更方便地实现TinyML应用。这加快了开发进程,降低了开发门槛。

在PSoC6上运行TinyML不仅能够充分发挥其硬件优势,还能带来功耗、成本、安全和实时性等多方面的优化,对于边缘计算和物联网应用具有重要的意义。

2、实现步骤

新建基于开发板的工程,选择嵌入是AI

161415fq48ubyiddqqfwc4

配置选项,enable实例

161415oa76vakkkvkhv660

保存设置

161415fuut2gt4gkeg212o

3、效果

161419bwkagk6ma9mc7m6m

161419ru60jlc671th3pj3

161419lz3e71mx7s2cem1c

结果一:

Total param -224.6 KB, OPS -7.49 MOPS, buffer 54.0 KB

===tm_run use 2.575 ms

0: 0.219

1: 0.781

Predict output is: Class 1, person, prob 0.781

结果二:

Total param -1.9 KB, OPS -0.02 MOPS, buffer 1.4 KB

===tm_run use 0.011 ms

0: 0.004

1: 0.004

2: 0.996

3: 0.004

4: 0.000

5: 0.000

6: 0.004

7: 0.004

8: 0.004

9: 0.004

### Predict output is: Number 2, prob 0.996

结果三:

Total param -88.4 KB, OPS -3.08 MOPS, buffer 11.0 KB

===tm_run use 0.895 ms

0: 0.004

1: 0.000

2: 0.973

3: 0.004

4: 0.023

5: 0.004

6: 0.004

7: 0.004

8: 0.004

9: 0.004

Predict output is: Class 2, bird, prob 0.973