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

全站首个NanoEdge_AI试用(dogs)

[复制链接]
silver 发布时间:2022-9-4 20:09
前言:# S) m0 L6 {# c' y+ v3 f* N  p* H
又到了开学的季节,看着学生们的朝气,心中无限感慨。2 I. Q6 d, V% ]9 ?, |1 `
刚好又到了周末,外面大大的太阳,闲着无事看到活动,初步了解下感觉还挺好玩,看到手上那么多板子总该得扫扫灰了
, W' w' B' d" P1 j- f! b7 p, }. m4 R4 i! i# l& A2 k
测试准备:" [  I" o& s) w
1.板子NUCLEO-L452RE
! D5 N' J4 e% m3 X' f2.需要准备一些数据,我们公司刚好有一些环境传感器的项目,打算拿这些数据测试下
; K0 w) x- x4 F& w3.传感器有:负氧离子、空气温度、空气湿度,PM2.5,PM10,准备了一个星期的数据共673条
/ T& N7 G4 y& _- G% m, b/ @9 X+ C& i1 v6 D& \- f# D' F
测试步骤:7 S) O+ t+ R; r3 u
1.先去官网下载,下载前要填信息,这个邮箱等下会收到激活码
/ B; n& H/ ~% P: |! `2.打开安装,然后启动会先显示要填licence,去邮箱复制进去激活即可4 B! t' z+ R  u& H" ?$ [
3.如下界面,共有5个选项 异常检测 1类,多类,推断,数据日志,具体意思我就不分析了,B站有个讲解视频讲的很好(测完后面我才发现有-_-)4.因为我想推算出空气温湿度和PM2.5和PM10时负氧离子的值,所以用推断(Extrapolation)新建项目( G4 C5 h* T8 Z* V6 v
choose_type.png
$ S$ U, W8 k. Y3 X6 V- i5.建完项目后填MAXRAM就是模型最终占用多大RAM,MAXFLASH也是同样,选择目标板子(这里我选了L476RG,跟核心和FLASH、RAM有关系,所以选了最接近的,核心不能选错,跟优化算法有关系的)+ ~, @9 o$ Z. m, t6 t: E5 }* P
project_set.png
7 j- Z. n3 a) m2 ^+ x5 s6.这步需要导入数据源,我的源文件是xlsx类型不能识别,用WPS另存为转成制表符分隔的TXT(逗号分隔的CSV应该也可以)8 e5 W2 j( q. k  ]' o
xlsx_txt.png $ E( B% S7 L# }) S/ q* w
7.点击ADD SIGNAL,把TXT选中放入(因为选了4个传感器所以文件必须5项数据列(第一列是结果列),不然会报错的)0 b. u1 C3 [8 }' b: |' Y
  \6 d+ c* `) V% x$ `
signal_add.png * M7 J( o1 _* E2 Z5 q3 S8 ?# e6 |
select_signal_file.png ) Q( T1 ]* G2 @) Z
data_set.png 0 {4 Y4 k' M7 w! S8 v4 F6 h
8.跑模型,点RUN NEW BENCHMARK,选中你的数据源文件,下面的拖动条是选择运行的电脑CPU核数,START等待运行即可) m: `5 e3 }. n6 {5 L
signal_set.png 1 d+ r4 u0 M1 S" P4 B6 L! s( E
benchmark.png
  F( h: c0 E0 i/ G3 T9.运行完毕后就可以进入仿真(如果想直接在MCU上测可以跳过此步),点击INITALIZE EMULATOR,把测试用的数据放到里面(因为选了4个传感器所以数据必须为4项了,去掉结果项),选完后结果直接在右边输出了
  F& K; S# i6 n, _& y emulator.png
. w; r8 U) C+ G- f0 Z10.把模型部署到MCU上,下面都是一些选项,跟MCU优化和省内存有关系,右边是示例代码(稍候复制到工程),COMPILE LIBRARY把输出的文件保存(.zip),将内容解压到测试工程下
2 _/ b1 o' {% \ deployment.png
$ n9 O+ F4 Q+ d6 g( m: U11.CUBEMX生成一个工程(省略一大波步骤,不过应该都会),我选了开发板型号后直接改MDK,一键生成,打开MDK: d8 p$ }5 S  ?; u  J# H
12.把头文件包含路径加上生成的文件夹,MiscControls加上--wchar32(默认16会报错),把输出的文件夹下的.a文件加到工程下,右键选择库文件,将文件类型改为library file后OK1 A  A8 ]% |- x1 Q3 N- @
keil_config.png 3 P  o" A5 {/ c" {
a_set.png
  X* I* \: U  G" [; _4 T: ]' O13.把NanoEdge_AI的示例代码选择性拷进来(按CUBEMX的走),初始化后运行neai_extrapolation(测试数据数组,推理结果)# I& Y' T. e: |1 b' N
14.输出的结果如下(不知道为什么跟电脑上有点小小的差异..,但结果基本很接近)0 ^  \# R* Z! ^1 [/ d9 t6 _$ g

4 }8 K$ _, x8 I1 x  j1 u result_output.png $ ^( {9 [, @7 @0 L7 u9 V) {0 E
% [! i* }8 R" T* d/ S4 }
总结:$ V  N4 V! N4 Q, L
1.用下来还是挺顺手的,刚发布没有中文,稍微花了点时间摸索了下(主要是没看到B站视频,不然看到上手应该很快),之前也接触过AI的平台上的应用,没用过CUBEAI,如果有相关方面的需求这个软件真的很顶,但公司暂时没有这方面需求...' }4 H, |- J  _. d0 N! ?1 v
2.这个licence有90天的使用时间,B站视频也说后续要买..(不过花了这么多人力物力整合出来也还算值,就是我买不起的价格o(╥﹏╥)o)。
3 j  ]9 C; z1 w+ s. g3.如果也想试用建议先看B站视频,基本上手把手的教,我这不过是把流程在走一次,不过视频用的是CUBEIDE,我用的是MDK,项目建的是推理,其实现在的数据并不是强相关的,这里只是用做演示做的一个例子,可以根据自己的需求再做改动% l- H0 ^) p, x# h1 e
4.ST的生态真的越做越大,软件也做的挺好用的,希望国产能加加油   % d) D' Q+ ]& _
5.测试用的数据和main.c在下面资源里  % W6 Y) L" E0 h" g6 @+ R2 Z" z
* ^. ?/ c. }) j5 A0 f6 ?5 q

datapack.zip

下载

31.12 KB, 下载次数: 14

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

举报

3个回答
STMCU-管管 回答时间:2022-9-5 08:51:52
这么晚还在学习,赞!& \4 M% s' S, P3 P$ c
silver 回答时间:2022-9-5 20:20:54
STMCU-管管 发表于 2022-9-5 08:51
; F$ w1 S6 \0 J8 |9 Y# D# a/ @这么晚还在学习,赞!

8 G2 P7 H" t1 ~) c测完刚好一天,吃完饭撰稿排版下就这么晚了,含泪爆肝
STMCU-管管 回答时间:2022-9-6 17:40:35
silver 发表于 2022-9-5 20:20
2 X5 J7 q! E  Y/ u; K( H# H测完刚好一天,吃完饭撰稿排版下就这么晚了,含泪爆肝
8 ~; }/ M3 f9 p5 m: B! k2 ~9 S
不容易啊,哈哈哈
3 S1 j! T5 E+ j, O
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版