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

全站首个NanoEdge_AI试用(dogs)

[复制链接]
silver 发布时间:2022-9-4 20:09
前言:
$ Y( }. Q3 S+ t. U% _又到了开学的季节,看着学生们的朝气,心中无限感慨。
7 \- f$ d  N% E4 g刚好又到了周末,外面大大的太阳,闲着无事看到活动,初步了解下感觉还挺好玩,看到手上那么多板子总该得扫扫灰了0 w9 p+ z8 {2 Y' C* W

: S$ {! R6 {" W+ Y4 I测试准备:
; U! W' K9 z+ B" |3 e4 r1.板子NUCLEO-L452RE' i' u  N: a5 n" ?9 T' A3 T% V7 w
2.需要准备一些数据,我们公司刚好有一些环境传感器的项目,打算拿这些数据测试下
3 e3 ~& e6 w# w* l. S# F: U3.传感器有:负氧离子、空气温度、空气湿度,PM2.5,PM10,准备了一个星期的数据共673条) M" v/ y  x0 P0 J6 l' r! I

2 N( P% i) {5 b. Y测试步骤:6 M/ e( m  a( ]3 _' f* x
1.先去官网下载,下载前要填信息,这个邮箱等下会收到激活码
" c4 n* K- D* `0 Y; r2.打开安装,然后启动会先显示要填licence,去邮箱复制进去激活即可
$ G7 D0 ?$ r4 q+ k) M: x3.如下界面,共有5个选项 异常检测 1类,多类,推断,数据日志,具体意思我就不分析了,B站有个讲解视频讲的很好(测完后面我才发现有-_-)4.因为我想推算出空气温湿度和PM2.5和PM10时负氧离子的值,所以用推断(Extrapolation)新建项目
; A: t8 ?2 C- M! t choose_type.png
' l0 u4 _( T/ ]! `5.建完项目后填MAXRAM就是模型最终占用多大RAM,MAXFLASH也是同样,选择目标板子(这里我选了L476RG,跟核心和FLASH、RAM有关系,所以选了最接近的,核心不能选错,跟优化算法有关系的)
' {4 t5 |7 ?7 G3 P- k! ?% L( W project_set.png 1 Z3 a/ v  j# h9 o9 n, _
6.这步需要导入数据源,我的源文件是xlsx类型不能识别,用WPS另存为转成制表符分隔的TXT(逗号分隔的CSV应该也可以)
: ~" ^. W1 f, V" v3 j: c xlsx_txt.png 0 \0 j+ {& N1 H4 M, E
7.点击ADD SIGNAL,把TXT选中放入(因为选了4个传感器所以文件必须5项数据列(第一列是结果列),不然会报错的)
  s: ]% k$ ?( n6 w2 o- K& g/ l. D7 |, S; X. h
signal_add.png
! [( M3 ?  _6 S" M( V select_signal_file.png
1 d. j/ ?3 M& j; H- Q# m. s data_set.png * Y5 |0 b1 n: M. s
8.跑模型,点RUN NEW BENCHMARK,选中你的数据源文件,下面的拖动条是选择运行的电脑CPU核数,START等待运行即可$ o, ^) l& E2 a/ q: `! c9 E
signal_set.png , V+ C6 _$ t+ _% X# r
benchmark.png - g8 H* K( {4 o0 {2 G
9.运行完毕后就可以进入仿真(如果想直接在MCU上测可以跳过此步),点击INITALIZE EMULATOR,把测试用的数据放到里面(因为选了4个传感器所以数据必须为4项了,去掉结果项),选完后结果直接在右边输出了
0 I5 m1 @; D7 |3 P( d$ c8 b2 f: p emulator.png 8 G' P9 {9 g* ~' m+ I- j  ]8 G$ _% V
10.把模型部署到MCU上,下面都是一些选项,跟MCU优化和省内存有关系,右边是示例代码(稍候复制到工程),COMPILE LIBRARY把输出的文件保存(.zip),将内容解压到测试工程下" j8 \6 h: T3 o$ W
deployment.png
! e$ N# y' u0 T+ g( ?! E11.CUBEMX生成一个工程(省略一大波步骤,不过应该都会),我选了开发板型号后直接改MDK,一键生成,打开MDK6 b& @& n& {; P, J- `7 a# y
12.把头文件包含路径加上生成的文件夹,MiscControls加上--wchar32(默认16会报错),把输出的文件夹下的.a文件加到工程下,右键选择库文件,将文件类型改为library file后OK; G- T! l8 r- N- D1 d' p
keil_config.png 4 _( r7 k8 [+ ?! f
a_set.png
' B& Y/ z: H$ M# {# v3 w13.把NanoEdge_AI的示例代码选择性拷进来(按CUBEMX的走),初始化后运行neai_extrapolation(测试数据数组,推理结果)
" b: A$ f& B3 M$ d; s2 s3 H5 k14.输出的结果如下(不知道为什么跟电脑上有点小小的差异..,但结果基本很接近)
$ Z: Y( p8 B% a* D; F% ~$ @$ ~5 D+ A% d; d( H. E  H; e4 A
result_output.png
9 s$ j  x% Z# V6 E
; O: O( [, g7 M0 m% A; G! Y$ P/ A总结:3 R0 `$ ]" o4 J7 L1 [$ G
1.用下来还是挺顺手的,刚发布没有中文,稍微花了点时间摸索了下(主要是没看到B站视频,不然看到上手应该很快),之前也接触过AI的平台上的应用,没用过CUBEAI,如果有相关方面的需求这个软件真的很顶,但公司暂时没有这方面需求...
9 H2 l1 E: ^: b6 [) H2.这个licence有90天的使用时间,B站视频也说后续要买..(不过花了这么多人力物力整合出来也还算值,就是我买不起的价格o(╥﹏╥)o)。
% X. C' B# R7 R+ a; }4 C3.如果也想试用建议先看B站视频,基本上手把手的教,我这不过是把流程在走一次,不过视频用的是CUBEIDE,我用的是MDK,项目建的是推理,其实现在的数据并不是强相关的,这里只是用做演示做的一个例子,可以根据自己的需求再做改动4 d& a$ a( c! t5 S6 d
4.ST的生态真的越做越大,软件也做的挺好用的,希望国产能加加油   
  I& Q# E! Q2 [) Y. ?5.测试用的数据和main.c在下面资源里  / e2 ]) `$ b  [4 [
& M" y. ]" m6 g! |- B% f0 x8 h2 L

datapack.zip

下载

31.12 KB, 下载次数: 16

赞 收藏 评论3 发布时间:2022-9-4 20:09

举报

3个回答
STMCU-管管 回答时间:2022-9-5 08:51:52
这么晚还在学习,赞!# J$ r  r+ Y7 g8 j: L
silver 回答时间:2022-9-5 20:20:54
STMCU-管管 发表于 2022-9-5 08:51; S  N# o) @0 e( q# `, E
这么晚还在学习,赞!

& ?+ P& A4 B; R' x1 c测完刚好一天,吃完饭撰稿排版下就这么晚了,含泪爆肝
STMCU-管管 回答时间:2022-9-6 17:40:35
silver 发表于 2022-9-5 20:20
: K" j2 y" T9 p( p4 u- }测完刚好一天,吃完饭撰稿排版下就这么晚了,含泪爆肝

# ]1 ~9 n- e5 D: [& u2 u' X不容易啊,哈哈哈
0 ^9 D3 H+ b2 e0 t7 T6 r# c  A

所属标签

相似技术帖

官网相关资源

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