STM32 AI实验课程—HAR在STM32L4上的实现

2023-02-08  

课程目的:旨在为AI深度学习解决方案提供关于ST生态系统的实践体验

实验步骤:


下载AI演示项目到ST开发板上

借助智能手机/平板电脑上的应用程序,将传感器数据和标签记录在ST开发板上

给定的Python脚本将处理数据集并训练NN模型


在STM32CubeMX.AI工具的帮助下,将神经网络训练好的模型导入到STM32项目中

相关软硬件简介

软硬件需求列表

IoT开发板—B-L475E-IOT01A

FP-AI-SENSING1

  • AI特定功能:训练用的数据集、数据标注、STM32模型转换对应代码

  • 其他功能:使用RTOS实现低功耗、手机应用软件“ST BLE Sensor”

实验1:STM32固件下载和演示测试

连接B-L475-IOT01A

  • 用Micro USB线连接到B-L475-IOT01A

  • 连接之后,驱动会自动安装,请稍等一会儿

在ST-LINK(调试器)驱动程序已正确安装的情况下,端口(LD6)附近的指示灯将切换为红色

ST-LINK驱动安装

ST-LINK驱动安装检查

  • 还可以在设备管理器的端口中检查是否会出现新的虚拟COM端口

B-L475-IOT01A默认固件下载

打开工程

  • 双击SENSING1.eww,打开工程(IAR)

修改main.c文件

修改main.c文件中的InitBlueNRG_Stack(void)函数,BoardName字符串将是手机/平板APP中显示的开发板名字

FP-AI-SENSING1编译及下载

单击Rebuild all,然后单击Download and Debug按钮。将固件成功下载到STM32后,单击Stop按钮

Open the FW project in CubeIDE

修改main.c文件

修改main.c文件中的Init_BlueNRG_Stack (void)函数,BoardName字符串将是手机/平板APP中显示的开发板名字

Build the code

下载到开发板

ST BLE Sensor App

BLE Sensor应用程序。选择BLE名称;在下面的选项卡中选择“Activity Recognition”;晃动开发板,确认活动将从“Still”变为“Walking”或“Running”。

实验2:数据收集和神经网络训练

数据收集

使用ST BLE Sensor应用程序,我们现在可以收集特定状态(步行、慢跑、静止、楼梯)的运动传感器数据,并标记它们,以便通过重新训练神经网络来更新它。

  • 数据记录功能可用于使用户能够创建用于训练其NN模型的数据集

  • 文件包中还提供了用于模型重新培训的预处理Python脚本

在记录新手势的数据时,请注意以下细节:先启动日志,再打开标签。

手势完成后,可以禁用手势标签(手势末尾也会做注释)并停止日志(关闭.csv文件)。

  1. 断开USB连接

  2. 将跳线从位置“1-2”移动到“5-6”

  3. 将USB电缆连接到USB OTG端口

  4. 在保持按下“USER”(用户)按钮的同时,还按下“Reset”(复位)按钮

  5. 先松开“Reset”(重置)按钮后,再松开“USER”(用户)按钮

神经网络训练

Python脚本命令行参数选项

实验3:导入更新的网络模型并下载

STM32固件更新

  • 为了生成模型文件我们需要创建一个新的CubeMX项目


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。