打印
[STM32L4+]

【STEVAL-STWINKT1B测评】6.nanoedge ai 初体验

[复制链接]
93|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
edge, AN, AI, TE, ST
本帖最后由 电子烂人 于 2024-9-18 20:24 编辑

#申请原创# #申请开发板#0.前言
前两天跟我姥爷打视频,姥爷让我多学学“欸哎”,帮他做个炒菜的“欸哎”机器人。不得不说现代传媒真的厉害,古稀的老人都对前沿技术略知一二。
手上的事放一放,先来做NANOEDGE AI 的部分。炒菜是做不了,整个颠勺还是行的(笑)。
1.NANOEDGE AI简介边缘AI是一种将人工智能处理从云端转移到网络边缘的技术,它使数据处理更接近数据源,如传感器或设备。这种方法降低了延迟,提高了带宽效率,增强了隐私和安全性,并且使得系统更加可靠。它适用于需要快速响应的应用,如自动驾驶、工业自动化和实时监控,通过在边缘设备上运行优化的机器学习算法,实现实时数据处理和智能决策。
NanoEdge AI Studio 是由意法半导体(STMicroelectronics)开发的一款自动化机器学习(ML)工具,专为STM32微控制器的开发人员设计。这个工具是免费的,可以帮助用户为STM32微控制器或智能传感器创建和集成机器学习模型。NanoEdge AI Studio 支持异常检测、分类或回归库的创建,并且能够与基于Cortex-M的Arduino开发板原生兼容。

(图源:wiki.stmicroelectronics.cn)
这个板子上集成了诸多传感器和通信方式,简直是为NANOEDGE AI这盘醋所包的饺子。
2.软件部分配置
软件的下载和使用这里不再赘述,今年初NANOEDGE AI studio 开放免费使用,直接在网站注册激活码即可。
打开后界面如图:

这里提供了四种训练方法,异常检测(AD)、多类分类(NCC)、单类分类(1CC)和外推法(E)。

简单论述四种方法:
  • 异常检测(anomaly detection[color=var(--content-h1-fg)]):[color=var(--content-h1-fg)]让一个系统从数据中学习到某些正常的特征,从而诊断出非正常的数据。
  • N类分类(N-class classification):将数据集中的每个实例分类到N个不同的类别中的某一个
  • 一类分类(1-class classification):从数据中识别出单个类别的实例,同时忽略或识别不属于该类别的所有其他实例。
  • 外推法(extrapolation):根据已有数据以及模型(函数)预测未知区域的函数值,预测的点在已有数据范围外,即是extrapolation(外推)。

这里可以直接用这块板子的DATELOG部分:


这里可以选择传感器和相关参数,这次选择用ISM330的加速度计:

之后会生成一个工程代码的ZIP,里面包含

其中的DOCS是WIKI的网站,可以按照WIKI来

另外还有一种方法,从串口采集数据,这种办法更方便,省去了前面搞数据的麻烦
板卡和数据选择:

代码部分:此部分代码要求时间固定,方便软件读取对应的参数,我用的定时进入中断回调函数:
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *hitm)

另外数据发送部分改用USB虚拟串口:
 if(USB_Datalog=1)
        size = sprintf(data_s, "  %d, %d, %d\r\n ",
                       (int)rptr->acc.x, (int)rptr->acc.y, (int)rptr->acc.z);
        CDC_Transmit_FS(( uint8_t * )data_s, size);
      }
这个代码用之前ISM330的,但是之前那个有BUG,采集速度不行,可以从FP-DATELOG包下载代码

采集一定数据之后,还需要再采集异常的数据:


(这部分东西有点多,等我更新)



6605766eabed6d4f20.png (1.11 KB )

6605766eabed6d4f20.png

2584266eabee23debb.png (1.11 KB )

2584266eabee23debb.png

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

11

主题

39

帖子

0

粉丝