
1. 简介NanoEdge™ AI 库是 Cartesiam 推出的人工智能静态库,它可以帮助客户直接生成可以运行在嵌入式 Arm Cortex 处理器上的.a 静态库文件。 2021 年 ST 收购 Cartesiam,完善了 ST 在 AI 领域的生态,大大降低了客户使用 STM32 开发 AI 应用的难度。 通过使用 NanoEdge AI Studio,用户只需要了解基本的 AI 概念,并提供相应的数据,便可以从众多 AI 算法库中智能搜索和生成出最符合用户应用的算法。: v9 t. k1 v0 r$ V NanoEdge AI Studio 具备以下特点:. {8 C8 K8 }9 l • AI 库的搜索引擎。 • 为嵌入式开发者量身定做。! _3 n8 p9 ?' h. I0 h • 通过抽象化数据科学和机器学习,降低用户开发难度。& V# H+ b' D& N2 O0 P* j • 快速部署机器学习,兼容任何 C 代码。 • 对比传统机器学习方法,使用最少量数据。 \) |, p" h# D# q8 R 本文将介绍 NanoEdge AI Studio 的使用方法,并完成人体姿态识别的简单应用。 3 s7 H) ?: [/ i y3 ^% Y& Q7 q' U 2. 数据采集 在使用 NanoEdge AI Studio 之前,我们需要准备数据,数据来源可以是公开的数据集,也可以是自己采集的数据,还可以利用 NanoEdge AI Studio 采集数据。9 F* Q" h1 g/ A9 H }4 [0 o, @) o 本文将使用 sensorTile.box 完成数据的采集。4 T$ e- a& v; U* b' ?+ D 4 w- s' ?' U! ]5 j$ | 2.1. 硬件介绍 7 G c2 i, x0 e# Z) z6 t ![]() 4 K b7 U: d5 K& d 在 ST 官网搜索 STEVAL-MKSBOX1V1 可以查看关于开发板的基本内容,板载了丰富的运动传感器和温湿度传感器,并且具备 SD 卡,可以保存采集到的数据。板载的 USB 可以用于供电和下载程序,也可以通过 ST-LINK 和开发板连接进行调试和下载。3 Y6 M2 X) |) H. K: o USB 下载程序方法:我们这里使用 STM32 CubeProgrammer 下载程序。首先确保没有用电池供电,然后按住板上的 boot 按钮,连接 USB 到电脑,点击 CubeProgrammer 中如下图图 2所示的 connect。0 m9 N& g' v2 w' _3 Q 2 g) @9 _" O& Z) | ![]() 连接成功后,选择好固件,然后填写下载地址,点击 Start Programming 即可完成下载。如图 3: ![]() 2.2. 软件介绍! l2 [( p; X+ M# Y 关于数据采集和后续的功能测试,推荐使用 FP-AI-SENSING1 这个软件包,可以在 ST官网搜索到。该软件包提供了基本的 BSP,包括按钮,LED,传感器驱动,SD 卡驱动,BLE驱动等。除此之外,它还提供了一些功能可以帮助我们收集数据,包括可以通过 BLE 连接 ST Ble Sensor App,通过该 APP 配置板载传感器采样率,完成数据的采集,并将数据按一定格式保存到 SD 卡当中,本文将利用该方法采集加速度数据。; t! \$ G4 V+ X! q- r 该软件包也实现了人体姿态识别和声音场景识别的 AI demo,可以在 ST BLE SensorAPP 上展示,其中的 demo 使用了 Cube.AI 工具做模型转换,和本文讨论的 NanoEdge AI 的方法不同,不在本文讨论范围中。 2.3. 数据采集步骤 2.3.1. 编译和烧录程序 下载完 FP-AI-SENSING1 软件包后,需要先编译 bootloader,工程路径位于:FP-AI-SENSING1_V4.0.3\Projects\STM32L4R9ZI-SensorTile.box\Examples\BootLoader编译完成后,下载到 sensorTile.box 当中即可。3 A' u/ y. ?5 m( Q 然后编译应用程序,工程路径位于:FP-AI-SENSING1_V4.0.3\Projects\STM32L4R9ZI-SensorTile.box\Applications\SENSING1编译完成后,下载到 sensorTile.box 当中,当上电启动后,绿灯常亮,表明开发板初始化正常完成。蓝色 LED 灯闪烁,表明 BLE 正处于广播状态。 注意: • bootloader 的下载地址为 0x08000000 • App 的下载地址为 0x08004000, l) S* L( ^0 Y( n4 J; F( ]0 E • 当使用电池供电,长按 PWR 按钮,可以开机或关机。在后续采集运动姿态数据时,我们需要使用电池供电。 • 如有需要,可通过 USB 给电池充电,充电过程中,红色 LED 会闪烁。 + i0 q$ s3 Q3 l V' l2 }! _+ ^: r" z # Y3 F6 x- h' M# C g( G% l2 { 4 H8 z7 F% E* g! p$ z ![]() 完整版请查看:附件 ![]() |
OpenBLT移植到STM32F405开发板
为什么要先开启STM32外设时钟?
【STM32MP157】从ST官方例程中分析RPMsg-TTY/SDB核间通信的使用方法
【经验分享】STM32实例-RTC实时时钟实验④-获取RTC时间函数与中断服务函数
STM32 以太网 MAC Loopback 的实现
STM32功能安全设计包,助力产品功能安全认证
基于STM32启动过程startup_xxxx.s文件经验分享
HRTIM 指南
ST 微控制器电磁兼容性 (EMC) 设计指南
适用于STM32微控制器的ΣΔ数字接口入门