项目简介
本项目是基于STM32L5xx微控制器的振动监测应用,结合STM32L562E - DK开发套件与NanoEdge AI Studio,实现了振动监测深度学习模型在STM32上的部署与运行。包含从数据收集、模型训练到部署的完整开发流程,可对振动数据进行实时监测与异常检测。
项目的主要特性和功能
- 硬件适配:基于STM32L562E - DK开发套件,配合NanoEdge AI Studio提供的机器学习库,部署振动监测深度学习模型。
- 数据采集:通过STM32L5xx硬件接口连接LSM6DSO传感器,实时采集加速度数据。
- 模型运用:利用NanoEdge AI Studio的机器学习库对采集数据进行模型训练,并将训练后的模型部署到STM32L5xx上。
- 实时检测:在STM32L5xx上运行训练好的模型,对采集的加速度数据进行实时监测与异常检测。
- 交互展示:通过LCD显示屏展示实时监测结果,提供用户与系统的交互功能。
安装使用步骤
前提条件
需安装以下软件和包: - STM32CubeIDE软件:下载 - STM32CubeProgrammer软件:下载 若要创建自己的NanoEdge AI项目,还需: - NanoEdge AI Studio软件:下载 - 串口终端,如PuTTY:下载
具体步骤
- 硬件准备:确保STM32L562E - DK开发套件和NanoEdge AI Studio的软硬件环境准备就绪。
- 环境配置:安装并配置好上述软件和包。
- 代码设置:在主程序(路径为
Core/Src/main.c
)中通过指令选择操作模式: ```
define DATALOG 1 // 0: 程序处于NanoEdge AI模式 | 1: 程序处于数据记录模式
还可编辑另外3个指令:加速度计数据速率、切换到检测前的学习迭代次数、NanoEdge AI阈值:
define ACC_DATA_RATE 833 // 833, 1667或3333 Hz
define LEARNING_ITERATIONS 100 // 当DATALOG为1时:记录的信号数量
define NEAI_THRESHOLD 90 // 介于1和99之间,通常约为90
``
4. **库集成**:将NanoEdge AI库的两个文件添加到STM32Cube项目中:
-
libneai.a文件,放置在
Core/lib文件夹中。
-
NanoEdgeAI.h文件,放置在
Core/Inc文件夹中。
编辑项目设置,在
Project -> Properties -> C/C++ Build -> Settings -> Tool Settings -> MCU GCC Linker -> Libraries中,在“Libraries”部分添加
neai,在“Library search path”部分添加
../Core/lib`。
5. 代码编译与烧录:
- 用USB线通过STLK端口将STM32L562E - DK连接到计算机。
- 使用STM32CubeIDE编译代码。
- 使用STM32CubeProgrammer将编译后的程序烧录到开发套件上。
6. 测试与验证:连接硬件到计算机,运行程序,验证振动监测功能是否正常。
请注意,此项目需要一定的硬件和软件环境支持,以及对STM32L5xx微控制器和机器学习库的深入理解。在使用过程中,请遵循STM32L5xx的数据手册和参考手册,确保硬件和软件配置正确无误。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】