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

如何开始使用ST AIoT Craft开发您的物联网解决方案

[复制链接]
STMCU-管管 发布时间:2025-4-9 16:57

如何开始使用ST AIoT Craft 开发您的物联网解决方案

意法半导体员工

选项

发布时间:2024-12-05上午8:00 - 编辑时间:2025-01-08上午10:40 编辑者:Laurids_PETERSEN

总结

本文展示了如何开始使用ST AIoT Craft工具,从而利用意法半导体智能传感器中的高级边缘AI功能开发您的物联网解决方案。

这款全新工具的出现将为意法半导体智能传感器带来更加流畅、便捷和人性化的AI编程体验。

简介

凭借ST AIoT Craft工具,您可以尝试使用各种集成在意法半导体智能传感器中的高级边缘AI功能。

您将学习如何编程MEMS惯性传感器和IMU中的机器学习内核 (MLC) 引擎,该功能可在微控制器睡眠模式下对加速度(或振动)和旋转模式进行分类,实现节能。

ST AIoT Craft将收集已标记的传感器数据,并将其用于训练MLC引擎。您可使用门户网站(建议使用Chrome浏览器)或配套移动应用提供的意法半导体评估板对得到的结果进行验证。您无需将ST AIoT Craft下载到本地电脑,即可在浏览器中直接运行。

1. 必备的硬件条件

2. 设置ST AIoT Craft 工具演示

让我们了解一下ST AIoT Craft工具的工作原理。

为此,我们可以先从一个现有的项目示例开始评估。

请单击以下链接访问该工具:https://staiotcraft.st.com/index.html

image.png

图1.ST AIoT Craft 主页

您只需单击右上角的[Readme] 按钮,即可访问ST AIoT Craft文档页面。以下是一些示例:

返回到主页,单击[Try it out] 按钮进入该工具,如图1所示。

注意: ,此时您尚未登录web应用,原因是登录并非强制要求。

您可以找到意法半导体准备的实际项目示例,其中涵盖了各种工业用例和娱乐用例。

单击智能资产跟踪项目示例。系统随即会弹出一个带有简短说明的窗口。

image.png

图2. 智能资产跟踪项目

单击位于[Try out] 按钮右侧的三个竖点。然后单击[View details]

您可以看到,该项目示例仅仅开发了一个名为smart_asset_tracking的AI模型。该AI模型的目标是SensorTile.box PRO套件以及带有机器学习内核的IMU LSM6DSV16X。

该模型是一款具有四个类别(静止_直立、静止_非直立、移动、摇晃)的分类器;它既是决策树,也是AI模型,因此必须利用数据进行训练。该AI模型将面向四个类别(静止_直立、静止_非直立、移动、摇晃)展开训练。

您可通过web应用在网络上对此AI模型进行评估,也可通过移动应用继续推进相关流程。

如果您选择了移动应用的体验方式,则系统会显示一些二维码。特别需要注意的是,您可以在右侧找到移动应用的安装二维码。

image.png

图3.ST AIoT Craft 移动应用

我们即将推出一篇专栏文章,帮助那些感兴趣的用户进一步了解ST AIoT Craft移动应用。

下面我们将集中讲解,如何通过web应用直接在网络上对该AI模型进行评估。

可以考虑将SensorTile.box PRO作为本实践环节所使用的开发板。

您需要刷写与该web应用相兼容的固件以评估AI模型。该固件也将在数据记录阶段用于创建数据集。

第一步,单击[Update the firmware] 以更新SensorTile.box PRO的固件。

您需要遵循以下三个步骤:

  1. 使用USB Type-C®电缆将SensorTile.box PRO与PC进行连接。
  2. 在DFU模式下打开开发板并刷写固件。 按住用户按钮2,并通过操作SensorTile.box PRO的电源开关接通意法半导体开发板的电源,如下图所示:
  3. image.png

图4. 利用SensorTile.box PRO 进入DFU 模式

  1. 单击位于右下角的[Flash firmware] 按钮,在该器件上刷写FP-SNS-DATALOG2_Datalog2固件。开发板已在DFU模式下识别为“已连接”。

此时web应用将下载固件二进制文件,并将该文件的内容流传输到开发板。

此时浏览器应该能够检测到所连接的SensorTile.box PRO。如果并未检测到,则需要手动将其选中。固件更新完成后,您即可与开发板建立连接。

单击位于屏幕右下方的[Connect device] 按钮。

连接建立后,系统将下载AI模型并将其发送到SensorTile.box PRO,再由固件应用据此对传感器进行编程。

尤其需要注意的是,如您所见,加速度计已通过以下特定设置使能:

  • ODR = 30 Hz
  • FS = 16 g
  • 机器学习内核使能

系统会将来自加速度计的数据发送至机器学习内核,再由机器学习内核将其分为以下四个类别:摇晃、移动、静止_非直立、静止_直立。

3. 开始评估阶段

单击[Start] 按钮。

具体状态需要根据SensorTile.box PRO的位置和运动情况进行识别。

  • 如果您摇晃开发板,系统将会正确识别摇晃类别。
  • 如果您移动开发板,系统将会识别移动类别。
  • 如果您以静止、直立的方式将开发板放在桌面上,则系统将会识别静止直立类别。
  • 如果您以静止、非直立的方式将开发板放在桌面上,则系统将会识别静止非直立类别。
  • image.png

图5. 评估AI 模型

您只需单击[Stop] 按钮,即可终止对该AI模型的评估。系统将显示如下视图:

此时,您可以决定继续探索[Explore other projects] 部分中的其他兼容项目,例如“Fan Coil Monitoring”和“Drilling Machine”。

或者,您也可以单击黄色的[Clone project] 按钮,在工作区中克隆该项目。注意: 执行此操作需要用户通过登录流程进行身份验证。

您还可以选择单击[View project details] ,方法与之前的操作相同。

现在,我们来看看经过评估的AI模型是如何训练出来的。

为此请单击黄色的[Train] 按钮,进入训练视图。

在训练过程中,我们需要使用数据。如下图所示,位于最左侧的“训练数据”模块**有64个数据文件,数据的总采集时间为1353.99秒:

image.png

图6. 训练数据

我们已经采集了这四个类别的数据,且数据集中的数据量非常均衡。

由于该数据只包含了加速度计数据,您只能使用加速度计向机器学习内核发送数据。

在训练过程中,系统会自动从数据中提取滤波器和特征。您可以选择提取这些滤波器和特征的具体方式。有以下三个选项可供选择:[Default] 、[Best] 和[Fastest]。请为本示例选择[Default] 。

image.png

图7. 滤波器和特征

在对AI模型进行训练之后,其分类准确率达到了97.96%。

image.png

图8. 分类准确率

您可以单击[Download configuration files] 按钮,以下载该训练过程的结果。该操作将启动用于开发板编程的.ucf文件下载。此外,您还可以使用.h文件来开发自己的固件应用。

单击位于最右侧[Results] 框中的蓝白按钮,即可将结果展开。

这样,您就可以检查混淆矩阵等统计信息以及其他指标了。其他指标包括实例、正确分类实例、错误分类实例和卡巴统计量。

image.png

图9. 结果MLC

单击位于“Results MLC”窗口右上角的[x] 按钮,关闭该窗口。单击主标题MLC配置smart_asset_tracking附近的灰色[Back] 按钮,以返回上一视图。

您也可以单击位于右上角的[Clone] 按钮,在工作区中克隆该项目。

克隆需要用户身份验证,因此系统会将您重定向至myST登录网页。

输入凭据后,您只需调用演示程序“smart_demo”,然后单击“OK”即可完成克隆。此时项目已克隆到工作区中。如下图所示,您在进入项目区域后就会看到项目“smart_demo”。

4. 创建您自己的项目

单击[New Project] 以创建新项目。该新项目的目标是检测开发板的不同运动。

image.png

图10. 我的项目工作区

将新项目命名为“movements_detector”,然后单击“OK”。

因为该新项目是空的,所以我们需要创建一个模型,但在此之前我们需要采集一个数据集。移动到“我的数据集”部分,如下图所示。您可以在这里找到smart_demo数据集,该数据集是您在克隆smart_tracking项目的时候一并克隆的。

您可以单击[Open details] 按钮查看该数据集,以了解应用处理该数据集的具体方式。

image.png

图11. 我的数据集 - 打开详细信息

下一个视图将显示该数据集;您可以用自述文件对其进行记录。

默认情况下,自述文件为空。我们可以通过单击[Edit] 按钮,并编写如下示例来对其进行自定义:

# Dataset

my dataset

单击[Save]

位于右侧的是通用元数据,其中包括数据集ID、数据集类型、数据集(包含107个数据记录)、数据集大小、数据集中获取到的类别以及用于采集数据集的开发板。

您还可以选择名为[Data logs] 的选项卡,以查看这些文件。

您可以查看一组.csv文件,每个文件对应一个类别。您可以单击位于右侧的[Open data visualizer] 以查看相关数据,如下图所示。

image.png

图12. 打开与摇晃类别行相对应的数据可视化工具按钮

单击[Start with default charts]

该文件仅包含加速度计数据,且您可以对视图进行自定义。例如,您可以放大数据并移动时间刻度。

您可以单击[Add new chart] 按钮并添加新图表。系统随即会弹出一个窗口。您可以在其中选择将[lsm6dsv16x - Accelerometer] 作为传感器,并将[x] 作为尺寸。对于颜色和样式,请选择[Blue color] 作为[Line Color] ,并选择[Dashed] 作为[Line Style] 。单击[Save] 以保存这些设置。所生成的图表将会同步:

image.png

图13. 我的数据集 - 添加新图表

您可以单击位于“My datasets”部分右上角的[New Dataset] 按钮以创建新数据集。

将其命名为“movement_dataset”。在“类别”中输入您检测到的运动,例如垂直、水平和空闲。单击确定。

单击位于“My datasets”部分上方的[Import data] 按钮以导入数据。您可以选择从现有的.csv文件导入数据,也可以选择记录数据。

请选择继续记录数据。单击[Log data from board] 按钮。检查开发板是否已连接到PC,否则请将其连接到PC并与PC进行配对。完成这一步骤后,单击位于右上角的[Connect device] 按钮。

通过扩展[Sensor Settings] 菜单来配置传感器的设置。选择LSM6DSV16X IMU的加速度计(FS = 8 g且ODR = 60 Hz)。

image.png

图14. 我的数据集 - 记录数据以创建新数据集

现在,您即可开始获取临时存储在PC本地文件系统中的数据。然后,您可以将该数据上传到云端。

如需继续操作,请单击[Start] 按钮。您需要选择用来存储数据的文件夹。单击弹出窗口中的[View files, Save Changes] 。您可为每个类别(空闲、水平和垂直)采集20秒数据。

在数据采集期间请不要移动SensorTile.box PRO。20秒过后,单击空闲标签,以停止针对该类别的数据采集。

单击蓝色水平标签,开始采集水平运动数据。在采集数据的20秒钟内,一直用手水平移动开发板,使其进行水平运动。然后单击水平标签以停止采集数据。

image.png

图15. 我的数据集 - 记录水平状态的数据

单击蓝色垂直标签,开始采集垂直运动数据。在采集数据的20秒钟内,一直用手垂直移动开发板,使其进行垂直运动。然后依次单击垂直标签和[Stop] 按钮,以停止采集数据。

系统随即弹出您的数据采集摘要窗口。正如您在弹出窗口的下部所看到的那样,您面向空闲、水平和垂直等三个不同的类别采集了一个均衡的数据集。

image.png

图16. 数据采集摘要

现在您就可以导入数据了。为此,请单击蓝色按钮[Confirm and import]

相关数据已经上传并以二进制格式保存在本地。

所以此时云端将对数据进行解压缩,并生成一组.csv文件,每个文件对应一个类别。

此时转换即告结束。如果您访问“数据日志”部分,就能够看到一组CSV文件,每个文件对应一个类别。如需查看与水平类别相关的数据记录,请单击位于表格相应行中右侧的带有条形图的符号[Open data visualizer]。单击[Start with default charts] ,将采集到的水平类别数据可视化。

image.png

图17. 我的数据集 - 可视化采集到的水平类别数据

如果要裁剪数据记录的开头和/或结尾,可以单击剪刀按钮。如需最终完成该操作,请单击[Crop selection] ,然后单击弹出窗口中的[Crop data]

5. 训练AI 模型

移动到“我的项目”部分,查看我们之前创建的名为movements_detector的项目。单击该项目,然后单击[New model] 按钮创建一个模型。由于您已将SensorTile.box PRO作为目标连接到PC,请在[Evaluation board] 部分中选择其名称。选择“MLC v2”作为智能传感器名称。调用“movements_model”模型,并将movements_dataset选为数据集。相关类别继承自该数据集。如需最终完成新模型的创建,请单击[ok]。

接下来,单击[Train] 按钮以训练该模型。

该数据集在三个类别中的样本分布均衡。在“传感器”部分中,选择加速度计。可将滤波器和特征设置为提取方法的默认值。如需开始训练,请单击[Run MLC Configuration] 按钮。

在训练阶段,系统会从数据中提取滤波器和特征。 随后系统会生成决策树,并将决策树转换成.ucf文件。该.ucf文件将用于评估,并将移至用户工作区下方。

从结果上来看,该模型对数据进行了过度拟合(分类准确率为100%)。您可以单击“Results”框内的白色图标,以查看混淆矩阵。现在,您可以单击[Results] 框中的[Try MLC] 按钮,在SensorTile.box PRO上对模型进行评估。

请选择“在线选项”,原因是SensorTile.box PRO已经与PC连接并完成了配对。单击位于右下角的[Connect device] 按钮。web应用会自动在SensorTile.box PRO上刷写AI模型。

该步骤完成后,单击[Let's start!] 按钮运行AI模型。

系统会自动使能该加速度计,其设置与数据记录阶段使用过的设置以及LSM6DSV16X内部的机器学习设置相同。

以下是一个评估示例:检测到开发板处于水平放置状态。

如果将开发板的位置从水平改为垂直,则系统会检测到垂直类别。

如果开发板保持不动,则系统会检测到空闲状态。

单击[Stop] 按钮以停止评估阶段。

总结

在本文中,我们向您简要介绍了ST AIoT Craft工具。目前许多意法半导体智能传感器都采用了机器学习内核 (MLC) 引擎,而ST AIoT Craft则能够教会您为该引擎编程的具体方法。其中尤为重要的是,它将教会您如何训练AI模型。您可以在门户网站上使用意法半导体评估板(例如SensorTile.box PRO)对得出的结果进行验证,而无需将该工具下载到本地PC上。接下来我们将发布更多关于ST AIoT Craft工具其他功能的文章,敬请期待!

相关链接

收藏 评论0 发布时间:2025-4-9 16:57

举报

0个回答

所属标签

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