你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

AI技术之FP-AI-MONITOR1简介

[复制链接]
STMCU小助手 发布时间:2023-5-21 15:22
FP-AI-MONITOR1是一种多传感器AI数据监控框架(基于面向STM32Cube的功能包),工作于无线工业节点。针对由X-CUBE-AI(面向STM32Cube的扩展包)或NanoEdge™ AI Studio设计的传感器监测型应用,它有助于快速启动应用的实现和开发。从数据集获取到物理节点上的集成,它涵盖了机器学习周期的整个设计过程。+ H, H+ x+ I. E; j2 R, h3 U
( h3 K2 x% m5 b1 Z3 R3 r5 r
FP-AI-MONITOR1能在SensorTile无线工业节点开发套件(STEVAL-STWINKT1B)上实时运行学习和推理会话,同时将来自板载传感器的数据作为输入。FP-AI-MONITOR1通过有线交互CLI来配置节点,并使用NanoEdge™ AI库管理学习、检测和分类阶段。此外,它还支持一种称为双阶段的高级模式,能将来自NanoEdge™ AI库的检测和使用CNN模型的分类相结合。对于简单的现场操作,独立的电池供电模式也允许用户在不借助控制台的情况下,通过用户按钮进行基本控制。6 w7 X) a* K# M$ c) s. h
' S. ?2 W9 b% E' |" C

$ h2 [, \5 {7 s1 Q硬件和软件概述8 j  f+ V8 R! l2 N& |
* A* `0 x7 V3 ]
SensorTile无线工业节点评估套件STEVAL-STWINKT1B* I% M% f. L9 D' t* v9 j% W
SensorTile无线工业节点(STEVAL-STWINKT1B)是一种开发套件和参考设计,可简化先进工业物联网应用(如状态监测和预测性维护)的原型开发和测试。它由超低功耗Arm® Cortex®-M4 MCU(运行频率120 MHz,具有FPU和2048-Kb Flash存储器(STM32L4R9))供电。STEVAL-STWINKT1B配备microSD™卡插槽,用于独立式数据记录应用。STEVAL-STWINKT1B还配有广泛的物联网传感器,包括但不限于:9 [: |% ?( F% B' o8 o; m  ?

* P+ b6 P0 U; U2 a) r5 y* ]✦ 超宽带宽(高达6 kHz)、低噪声、3轴数字振动传感器(IIS3DWB)。
7 j( ~. b4 A3 P: Z: e* b
* a3 M' ^/ {7 _! B6 J  v( ]  `4 |✦ 6轴数字加速度计和陀螺仪iNEMO惯性测量单元(IMU),带机器学习内核(ISM330DHCX),以及模拟MEMS麦克风,频率响应可达80 kHz(IMP23ABSU)。! h; m8 m8 z: O" H5 }6 {

! y" u6 G" v, i  v7 T$ O  A✦ 参考本文档获取关于STEVAL-STWINKT1B支持的不同传感器和特性的所有信息。
/ U0 M' f% g3 n/ u& f
FP-AI-MONITOR1软件描述
6 z9 }" b  ^" q. ]FP-AI-MONITOR1功能包的顶层架构如下图所示。- l* L+ U1 B  V1 |1 u2 }+ D5 u

+ P: d: m+ B& H- n  D! B
微信图片_20230521152216.png
3 M  I( t# ?& p2 r1 j# `
3 b9 D2 I& [" K. L% F; ~! |
▲图1 FP-AI-MONITOR1架构

+ W- s4 ^: o! ?( a) `' m; l

1 l2 b4 L# C5 f: r1 s  f先决条件和设置
/ m$ l  n! S+ @0 `
硬件先决条件和设置& ?7 d0 I% c  {1 {+ C2 t
如要将FP-AI-MONITOR1功能包用在STEVAL-STWINKT1B上,需准备以下硬件项目:; M5 u7 {/ r/ S" U! t- g
✦ STEVAL-STWINKT1B开发套件板;
9 {9 E' \- {* v2 u( Z* o+ p

- a: w4 _# N0 `" G9 u: S9 Y' z✦ 采用Windows®操作系统的笔记本电脑/台式机(Windows® 7、8、或10);
$ Q6 x. r( L: ^

  V9 u5 K( X; C) _% ]% t✦ 两根Micro-USB线缆(一根将传感器板连接到PC, 另一根用于STLINK-V3MINI),以及一个STLINK-V3MINI。
! }- @  B2 U1 g  D, r9 n$ Y
3 Y. ^6 k8 A" S6 ~6 k9 x, U* h: W
2 m5 {! E" I  O& b
软件要求
+ p4 J  a8 h- N5 h+ Y; O. {
✦ 下载FP-AI-MONITOR1软件包,将.zip文件解压,您将得到项目的软件包。软件包中包含面向传感器板STEVAL-STWINKT1B的二进制文件和源代码。. T( F' U5 e9 B

' J" \% x5 \$ v" w8 x✦ 安装以下IDE之一:" g0 ~: t: g" N6 M2 s& s
意法半导体的STM32CubeIDE版本 1.9.0;
1 {: }$ B$ K7 U+ O% l0 T" {面向Arm(EWARM)工具链(版本9.20.1或更高版本)的IAR Embedded Workbench;
9 p9 D1 j' ~8 A, Z1 p" yRealView微控制器开发套件(MDK-ARM)工具链(版本5.32)。
& E7 Z0 f; i* ^4 Q

) t& |: }# g. Q0 t✦ STM32CubeProgrammer (STM32CubeProg)是一款用于编程STM32产品的全功能多操作系统软件工具。它通过调试接口(JTAG和SWD)和bootloader接口(UART、USB DFU、I2C、SPI和CAN)提供了一个易用高效的环境,用于读取、写入和验证设备内存。STM32CubeProgrammer提供了广泛的功能,可编程STM32内部存储器(如Flash存储器、RAM和OTP)以及外部存储器。FP-AI-MONITOR1通过STM32CubeProgrammer测试基于(版本2.10.0)。该软件可以从STM32CubeProg下载。
1 Q  z" u  t* E3 _9 G# e9 P: p

5 [/ E6 @& w! b3 n; z✦ TeraTerm是一款开源免费软件终端仿真器,可用于通过串行连接托管FP-AI-MONITOR1的CLI。下载和安装最新版本的TeraTerm。
8 t9 Z3 @/ {7 O( ]$ n) l
$ @4 }3 Z" l; Q. m
✦ STM32CubeMX:FP-AI-MONITOR1要求STM32CubeMX版本达到6.5.0。如需下载STM32CubeMX并获取所有特性的详细信息,请访问st.com。
( }7 N% ]2 J6 O& m: ^
0 {" h! j# l+ _* N0 [+ T0 c# A' ^  S
✦ X-CUBE-AI:在STM32CubeMX工具(版本7.1.0或更新的版本)安装使用,在UM2526入门用户手册中有相关的介绍。
( U  l$ \9 R6 }/ Z- H+ t' v# z
5 {8 A; c- `* V" N  E  N
✦ Python 3.7.3:所需软件包的列表及其版本信息以文本文件的形式在/FP-AI-MONITOR1_V2.0.0/Utilities/requirements.txt目录中提供。以下指令用于anaconda提示符或Ubuntu的指令终端,安装配置文件requirements.txt中指定的所有包:
8 `2 ^) n8 Z3 A; K0 v% t" |7 |0 C% u+ g! g- _# c
pip install -r requirements.txt
/ M9 [7 d! b% z9 H; ~& S) I

# p* b; Y* K" Q+ S$ i✦ NanoEdge™ AI Studio:NanoEdge™ AI Studio是一种新型机器学习(ML)技术,可以让终端用户轻松享有真正的创新成果。只需几步,开发人员便可运用少量的数据创建理想的ML库。# z8 z3 E- C) ~. l0 k( ~
6 x! x) k# G9 G7 s
在传感器板STEVAL-STWINKT1B上刷写应用程序
7 s2 u; t( S. d( ?3 T1 B3 Z

+ e- U+ y0 f3 x4 |& ~2 M1 t下载并解压软件包之后,下一步是使用功能包的二进制文件对传感器节点进行编程。为了方便用户,功能包配备了预构建的项目二进制文件。该二进制文件可通过路径/FP-AI-MONITOR1_V2.0.0/Projects/STM32L4R9ZI-STWIN/Applications/FP-AI-MONITOR1/Binary/FP-AI-MONITOR1.bin获得。只需执行如下图中所示的拖放操作,就可以轻松使用所提供的二进制文件对传感器板进行编程。
1 X% T+ q  d1 E  \! O
+ W) M8 R; N  f# _5 \
微信图片_20230521152219.png
5 P  ~$ V) L: W0 z8 _9 X( g5 o
% N4 g7 _% v! M) p6 W, [4 ?8 @
▲图2 在STEVAL-STWINKT1B上刷写应用程序
! @( e% |- S% e% b% ]$ b3 W) ]) U' R. [( h3 C
: m% J% q4 F' `2 X1 K% ]
FP-AI-MONITOR1控制台应用程序2 K" `* s2 u6 w9 X: K  l
设置控制台
  Q! W% Z$ U, K0 i; K8 _运用项目的二进制文件对传感器板进行编程(如第2.3节中所示)之后,在PC上通过TeraTerm设置板件的串行连接。为此,需启动TeraTerm并创建一个新连接 - 从工具栏中进行选择,或选择适当的端口以建立与板件的串行通信。下面的图片举例了COM10 - USB串行设备(COM 10),但可能根据用户的不同而变化。
( F1 R2 }; V" {1 m7 S% t% j( V! a0 N! |% c  c) K1 l9 p  U* t8 Z8 X, L
配置传感器% a- G. w) m; r  b/ R
通过CLI接口,用户可以配置传感和状态监测应用所支持的传感器。可以在CLI控制台上显示支持的传感器列表,方法是输入指令sensor_info。该指令打印支持的传感器列表及其id,如下图所示。用户可以使用这些id配置这些传感器。这些传感器的可配置选项包括:
$ Z2 G- J& J$ h6 [✦ enable:启用或禁用传感器;
2 U1 ~7 F* M, j4 X0 g, u✦ ODR:从可用的选项列表中设置传感器的输出数据速率;, A8 c: f1 j' l( I
✦ FS:从可用选项列表中设置满量程范围。2 s1 a, s% B# o! c
* K# P( m4 W" I) \
下图显示了获取和设置这些值(以及原有值和更改值)的完整示例。. P. y2 S2 x; [9 B

6 t. d! o* ]- V2 @/ |  n
微信图片_20230521152222.png . j! Z. l! ?3 x1 e3 i4 A- o2 x
8 D+ e1 O/ b  n; k- e
微信图片_20230521152225.png ! n/ e6 K7 T: u/ v( D# @# F) Q

# g7 u  V: a9 z; Y: r

) ]! v4 `  p; p+ B' g- Q连接建立之后,将显示以下消息。如果情况并非如此,请复位板件。* Y$ s9 p3 m" R: I( O& T
# H8 l! N* @& n& r" N' t5 f
微信图片_20230521152228.png , Z# {& c8 F  r
2 X+ J) \) `- Y4 N2 l6 J( j* w! H7 D
输入help显示所有可用指令列表及各自的使用说明。- H# _3 S3 h+ B  N& E
2 v8 k7 O! W( E% J
5 M5 Q3 X4 ?8 u0 C# x( n
按钮操作模式& S4 M( I# R  [
该模式旨在使用户能够再没有CLI控制台的情况下操作STWIN上的FP-AI-MONITOR1。在按钮操作模式下,可以通过用户按钮(无需借助交互式CLI控制台)来控制传感器节点。
- {, A" n# ]9 U; G1 l. l, a" A7 [

$ e8 T, s" ^/ G按钮操作模式可以自行选择是否使用CLI,并且与串口控制台及其命令行接口(CLI)的当前定义完全兼容和一致。
' }9 v+ i; d8 l& m8 r
3 ~$ d0 p+ L% ]0 C
该版本功能包的支持硬件(STEVAL-STWINKT1B)配有三个按钮:1 c+ ?; o$ M9 {  E( Z* m. j
1.用户按钮,唯一通过软件可用的按钮;0 c7 B6 W6 M- U- w0 c! ~
2.复位按钮,连接到STM32 MCU复位引脚;
/ u; h! D1 p6 Z# N9 T7 z3.电源按钮,连接到电源管理。$ e- M$ U: C  |. g  ~5 W& L2 W9 y

* X$ Y2 R& x/ M* _! v以及三个LED:
- L) A, {1 `$ m( H$ C. q% E9 K1.LED_1(绿色),由软件控制;& [6 K( t4 J2 o. q. ]
2.LED_2(橙色),由软件控制;
9 e( E- f; O9 u3.LED_C(红色),由软件控制,指示通过USB数据线充电时的充电状态。! Z# g8 T. J- h& d' G: O. w& \$ \
  z- S6 K: G( y: {" J8 D. D
因此,按钮操作的基本用户交互是通过两个按钮(用户和复位)和两个LED(绿色和橙色)完成的。下面详细介绍如何分配这些资源,以便向用户显示哪些执行阶段是活动的,或者报告传感器节点的状态。# t8 \/ `( x( E1 l  R% C

, U  T' P: z1 {
  p/ q7 B9 Q+ O% H2 i0 d7 \; p1 g
可用应用程序
8 g4 L% e- s; Z1 c9 [2 U: Z✦ NanoEdge™ AI异常检测短线6 A( u- `: n* s$ _
✦ n-class分类短线% m) p5 I) R$ a
FP-AI-MONITOR1包括一些预先集成的短线,这些短线可轻松被NanoEdge™ AI Studio所生成和提供的AI状态监测库所替代。该短线模拟NanoEdge™ AI相关功能,例如在边缘运行学习和检测阶段。
7 L+ i# {# V" N2 G1 s, ]1 h  `6 Y) y; X! F! n" _( l3 D

  H4 A4 D( X0 y% o* F) ?✦ 惯性数据分类
) }" G+ k5 `+ ?3 R) e这是一个CLI应用程序,具有预先构建的人类活动识别模型。
, o# g0 E* h; H, G4 A& \2 n/ @' K; ?% {0 N; s/ N1 e+ I% X6 K, D  J
3 k9 a7 T+ V% @
✦ 双模式应用程序
6 E- _! ^& @3 O$ c3 U$ I- x除了上面章节中描述的三个应用程序之外,FP-AI-MONITOR1还提供一个高级执行阶段,我们称之为双应用程序模式。该模式使用基于NanoEdge™ AI库的异常检测,并使用基于模拟麦克风的预构建ANN模型进行分类。双模式工作于省电配置。基于NanoEdge™ AI库的低功耗异常检测算法始终基于振动数据运行,而基于高频模拟麦克风管道的ANN分类仅在检测到异常时才触发。除此之外,两个应用程序是彼此独立的。值得一提的是,双模式是针对以最高速度运行的USB风扇而创建的,在其他速度下进行测试时的表现较差。应用程序的工作原理非常简单。
( ~! B! p( l9 a' q5 M3 ^- c% Q8 v2 _% M0 f
- _- c. v: E$ y
如有侵权请联系删除) J) P3 z, I7 D$ T4 u

+ [' y; E* F8 I) E  C7 r; S* e3 \. B1 t4 x
赞 收藏 评论0 发布时间:2023-5-21 15:22

举报

0个回答

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版