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

全站首个NanoEdge_AI试用(dogs)

[复制链接]
silver 发布时间:2022-9-4 20:09
前言:7 I/ k( v/ v! F
又到了开学的季节,看着学生们的朝气,心中无限感慨。2 Q& j* V$ g% I
刚好又到了周末,外面大大的太阳,闲着无事看到活动,初步了解下感觉还挺好玩,看到手上那么多板子总该得扫扫灰了- R4 _: m6 p, T/ H* Q2 G! a. C6 I
9 E* k6 p* s: ?" }
测试准备:8 V4 N! T9 b# o4 [: f5 Q
1.板子NUCLEO-L452RE
( `+ {0 O- O" X! e( n- A2 Y6 ^2.需要准备一些数据,我们公司刚好有一些环境传感器的项目,打算拿这些数据测试下
+ K/ o7 n0 `5 K9 m" _9 o& A3.传感器有:负氧离子、空气温度、空气湿度,PM2.5,PM10,准备了一个星期的数据共673条* t+ D5 e  Y0 e1 d4 t) U0 x
8 A( {$ ~& H  _
测试步骤:
2 c7 ^' J4 o) }7 S; {3 y, R1.先去官网下载,下载前要填信息,这个邮箱等下会收到激活码( ?% R% P# k) r0 u5 ^5 w4 c
2.打开安装,然后启动会先显示要填licence,去邮箱复制进去激活即可
* [5 l: d1 }% G( H- g9 b0 V3.如下界面,共有5个选项 异常检测 1类,多类,推断,数据日志,具体意思我就不分析了,B站有个讲解视频讲的很好(测完后面我才发现有-_-)4.因为我想推算出空气温湿度和PM2.5和PM10时负氧离子的值,所以用推断(Extrapolation)新建项目
/ ?: d" a( k, Q/ U: Q, k choose_type.png
" ^: I8 a/ r* S1 r! s* v5.建完项目后填MAXRAM就是模型最终占用多大RAM,MAXFLASH也是同样,选择目标板子(这里我选了L476RG,跟核心和FLASH、RAM有关系,所以选了最接近的,核心不能选错,跟优化算法有关系的)7 t( C* ]7 i# _, U
project_set.png
+ @$ e4 A' W/ f6.这步需要导入数据源,我的源文件是xlsx类型不能识别,用WPS另存为转成制表符分隔的TXT(逗号分隔的CSV应该也可以)
; _% m7 {+ d8 ]( _, w! @" A, h xlsx_txt.png
9 b! ]* ~) Z7 M$ r2 T0 s5 q' ~# ]7.点击ADD SIGNAL,把TXT选中放入(因为选了4个传感器所以文件必须5项数据列(第一列是结果列),不然会报错的)
" s3 O. y1 F  t/ _- Y* X9 R6 a7 H+ |4 z/ U1 a) B4 ?
signal_add.png
* |! y5 T  |; v* h4 ^0 R select_signal_file.png ( U. g9 c5 Y* K% ?
data_set.png 5 Q8 l8 v8 M4 I' J) ^
8.跑模型,点RUN NEW BENCHMARK,选中你的数据源文件,下面的拖动条是选择运行的电脑CPU核数,START等待运行即可6 C) l8 j, G1 \
signal_set.png - [7 q/ l$ o- `: C/ P  i
benchmark.png
! ?, d) F- a8 Z9.运行完毕后就可以进入仿真(如果想直接在MCU上测可以跳过此步),点击INITALIZE EMULATOR,把测试用的数据放到里面(因为选了4个传感器所以数据必须为4项了,去掉结果项),选完后结果直接在右边输出了
, O7 m- V  o, g emulator.png , O8 y1 I7 y/ H- w1 m
10.把模型部署到MCU上,下面都是一些选项,跟MCU优化和省内存有关系,右边是示例代码(稍候复制到工程),COMPILE LIBRARY把输出的文件保存(.zip),将内容解压到测试工程下+ f  Y2 t/ ~, J0 a& K# l
deployment.png 2 r8 r6 Y0 g# B/ J9 [, @
11.CUBEMX生成一个工程(省略一大波步骤,不过应该都会),我选了开发板型号后直接改MDK,一键生成,打开MDK
9 I( K0 ~$ n6 T4 d$ X% \12.把头文件包含路径加上生成的文件夹,MiscControls加上--wchar32(默认16会报错),把输出的文件夹下的.a文件加到工程下,右键选择库文件,将文件类型改为library file后OK! r9 u$ I1 V! ]1 b' L( T6 O# ]7 v; l; J
keil_config.png
! z- X/ J# j) n; Z$ [8 b a_set.png : A' J* w# x7 F/ f7 q4 L: O. G
13.把NanoEdge_AI的示例代码选择性拷进来(按CUBEMX的走),初始化后运行neai_extrapolation(测试数据数组,推理结果)- K- V% d2 t: }- m" L; n" _" A
14.输出的结果如下(不知道为什么跟电脑上有点小小的差异..,但结果基本很接近)
5 G1 }" i6 z, s( e+ ^
1 W" N, }( ~% b3 p2 a$ V result_output.png
* q2 J/ o: V  V; D- C: x8 \9 }9 p1 J( w% w% X  e8 }
总结:
$ v" \/ z  v1 A* W# C1 H) b1.用下来还是挺顺手的,刚发布没有中文,稍微花了点时间摸索了下(主要是没看到B站视频,不然看到上手应该很快),之前也接触过AI的平台上的应用,没用过CUBEAI,如果有相关方面的需求这个软件真的很顶,但公司暂时没有这方面需求...
* T& L1 G0 W' y! J& V/ [2.这个licence有90天的使用时间,B站视频也说后续要买..(不过花了这么多人力物力整合出来也还算值,就是我买不起的价格o(╥﹏╥)o)。3 T: }, x, [7 c& i3 T' R- p3 A
3.如果也想试用建议先看B站视频,基本上手把手的教,我这不过是把流程在走一次,不过视频用的是CUBEIDE,我用的是MDK,项目建的是推理,其实现在的数据并不是强相关的,这里只是用做演示做的一个例子,可以根据自己的需求再做改动
( A5 p. F7 F4 }. d& V4.ST的生态真的越做越大,软件也做的挺好用的,希望国产能加加油   6 D$ S5 T/ H+ X0 N2 D( i1 ]
5.测试用的数据和main.c在下面资源里  4 V4 p2 Y' K: H. s; Y% ^7 l! g  I
$ A+ `8 i6 O$ f7 _8 n( i2 E+ _5 O

datapack.zip

下载

31.12 KB, 下载次数: 15

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

举报

3个回答
STMCU-管管 回答时间:2022-9-5 08:51:52
这么晚还在学习,赞!
1 z2 O8 C8 G; V1 m$ }" H
silver 回答时间:2022-9-5 20:20:54
STMCU-管管 发表于 2022-9-5 08:51% ?% @  ~% E! y' h$ Q1 g4 L
这么晚还在学习,赞!
, Z- {4 M& h% Q$ q. P
测完刚好一天,吃完饭撰稿排版下就这么晚了,含泪爆肝
STMCU-管管 回答时间:2022-9-6 17:40:35
silver 发表于 2022-9-5 20:20' z0 m) t8 a- Y; @
测完刚好一天,吃完饭撰稿排版下就这么晚了,含泪爆肝

0 z7 v! c, o$ |0 q2 X不容易啊,哈哈哈
' z8 P3 [: u! P/ a: \1 Q& p# z$ P

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版