资料介绍
描述
包裹的安全运输是所有在线零售商都头疼的问题,因为在运输过程中会发生许多损坏。这些损坏会导致更多的产品退货、糟糕的客户体验以及零售商的声誉。由于我们不知道在交付过程中发生了什么,因此可能很难证明包裹的内容物在运输过程中被毁坏,而不是在转移到承运人之前或之后。鉴于目前的情况,既有不公正的指控,也有蓄意造假的可能。
作为解决方案,我们正在设计一种可以监控包裹在运输过程中安全处理的设备。该设备使用 Nano 33 BLE Sense 和 GSM 模块以及 Edge Impulse 来识别包裹处理不当发生的位置。使用加速度计数据,设备可以识别在传输过程中发生的所有可能的不安全处理。一旦设备检测到不安全的处理,我们的系统就会生成警报,记录事件的当前时间。零售商可以分析日志作为内部审计的一部分,以分析快递服务的性能。用户还可以使用提供的网络界面跟踪包裹的安全处理。
该设备在运输带有护理包的手柄时非常有用,需要小心处理。
它是如何工作的?
Arduino Nano 33 BLE Sense 有一个 9 轴 IMU(3 轴加速度计 + 3 轴陀螺仪 + 3 轴磁力计),非常适合识别手势。在从 IMU 摄取数据后,AI 模型将这些动作分为五类——重摔、剧烈摇晃、投掷、正常携带和空闲。重摔、剧烈摇晃和投掷被归类为不安全处理,其余属于安全处理。一旦 AI 模型检测到不安全处理,GSM 模块就会被激活,并在 firebase 中记录不安全处理事件。用户和内部审计团队可以跟踪这些事件,以分析运营商的绩效。
软件设置
1.新建一个项目
第一步也是最重要的一步是创建一个新的 Edge Impulse 项目。如果您已经有一个帐户,您可以按照下面显示的步骤创建一个新项目。如果您没有 Edge Impulse 帐户,请注册一个新帐户并按照以下步骤操作。
在我们的案例中,我们在分析来自 IMU 的加速度计数据后对手势进行分类。因此,请确保从列表中选择 ** Accelerometer Data **
2.连接设备
为了直接从 Arduino Nano 33 BLE sense 收集加速度计数据,我们应该先将设备连接到 Edge Impulse studio。按照此处给出的步骤将设备与工作室连接。
完成上述所有步骤后,请确保您在“设备”选项卡中看到您的设备。
3. 数据收集
机器学习从您提供的数据开始。收集干净的数据至关重要,这样您的机器学习模型才能识别正确的模式。您的模型的准确性取决于您提供给计算机的数据质量。不准确或过时的数据将导致不准确的结果或不相关的预测。
由于它会直接影响模型的结果,因此请务必从信誉良好的来源获取数据。好的数据是相关的,几乎没有重复和缺失的信息,并且准确地代表了所有的分类和子类别。
在构建运动识别模型时,我们正在从 IMU 收集加速度计数据。
要收集数据,请导航至“数据采集”选项卡。
在那里您可以看到一个记录新数据选项卡,我们可以在其中从连接到 Edge Impulse 的受支持设备收集数据。如图所示设置所有数据采样参数,现在是时候收集一些数据了。根据您的需要改变采样参数。
我们将 Arduino Nano 33 BLE Sense 嵌入到垫子上以收集训练所需的数据。
4.数据准备
最后,我们有 28 分钟的加速度计数据。数据是在 5 个不同的类别下收集的 - 重摔、剧烈摇晃、投掷、正常携带、空闲。
获得数据后,我们必须准备它。为此,我们可以执行以下操作。
- 可视化数据
可视化数据以了解其结构并了解可能有助于我们设计脉冲的各种变量之间的关系。
- 清除不需要的数据
将数据可视化后,我们可以确定数据是否对模型训练有用。删除不需要的数据以创建干净的数据集。
- 拆分数据
一旦我们有了一个干净的数据集,就把它分成训练和测试数据集。在这里,我们将它们以 80:20 的比例分成两部分。如果您的数据未拆分,请从数据采集选项卡或仪表板执行测试/训练拆分
5. 冲动设计
通过在 Edge Impulse 中创建 Impulse,您正在创建自己的机器学习管道。导航到Impulse 设计 > 创建 Impulse
一个脉冲包含 3 个块:输入块、处理块和学习块。我选择了时间序列数据作为我的输入块,光谱分析作为处理块,分类(Keras)作为学习块。如果你对检测异常运动感兴趣,你可以添加一个异常块,我暂时忽略它。
6.特征生成
接下来,选择Save Impulse ,然后通过单击导航到 Impulse 设计面板中的Spectral Features 。生成参数后,稍等片刻,然后单击“保存参数” 。
现在转到Generate features选项卡,然后单击Generate features 。该过程完成后,功能浏览器选项卡将允许您查看数据集。这使您可以快速验证您的数据是否正确聚类。
7.模型训练
模型训练是神经网络尝试将权重和偏差的最佳组合拟合到机器学习算法以最小化损失函数的阶段。
在NN 分类器选项卡中,在脉冲设计菜单下,我们可以配置影响神经网络训练过程的各种参数。如图所示,我更改了默认值以获得更高的准确性。
完成后,您会看到一些训练性能指标,例如准确性和损失。我们经过训练的模型的准确率为 95.4%,足以满足我们的所有需求。
8.模型测试
训练好模型后,我们现在可以对其进行测试,看看它如何处理新数据。选择Model Testing下的Classify All 。模型在我们的测试数据上的性能显示在“模型测试结果”选项卡中。我们的准确率为 91.3%,相当不错。您还可以查看混淆矩阵以确定哪些标签最容易出错。在此基础上,您可以使用附加项扩展这些类的训练数据集。
除了对测试数据进行分类外,我们还可以使用Live Classification来收集实时数据并进行实时分类。这将确保模型能够完美地处理真实世界的数据。
9. 将模型部署到设备
一旦模型经过训练和测试,就可以将其部署回设备。为此导航到Deployment > Build Firmware 。选择Arduino Nano 33 BLE Sense and Build 。它将生成模型并将其下载为 zip。将下载的 zip 添加到 arduino 库中,一切顺利。
在 Edge Impulse 中有选择 NN 分类器优化的选项。我们可以通过选择最佳选项来提高设备性能。Edge Impulse 将建议最适合我们需求的选项。如果启用编译器,我们将以更少的内存实现相同的精度。
10. Firebase 实时数据库
Firebase 是一个用于创建移动和在线应用程序的平台。感谢 Firebase,开发人员现在可以专注于创造令人惊叹的用户体验。无需服务器管理,无需创建 API。Firebase 是您的服务器、API 和数据存储,所有这些都是以一种通用的方式构建的,您可以根据大多数需求调整它们。在我们的项目中,我们使用 Firebase 实时数据库来即时发布和检索数据。
查找 Firebase 配置
- 去火力地堡
- 然后转到设置>项目设置
- 在您的应用程序 > SDK 设置和配置 > 配置下(示例如下)
const firebaseConfig = {
apiKey: "",
authDomain: "",
databaseURL: "",
projectId: "",
storageBucket: "",
messagingSenderId: "",
appId: ""
};
12. 网页界面
Web 界面的设计方式可以反映 Firebase 数据库中更新的所有事件。不安全的处理事件直接从 Nano 33 BLE Sense 在 firebase 中更新,其他发布的更新可以使用 API 进行更新。
硬件
Package tracker的核心是 Arduino Nano 33 BLE sense。我们之所以选择这款板,是因为它外形小巧,功能强大。它带有一系列嵌入式传感器,这里我们使用 LSM9DS1 传感器,这是一个 9 轴惯性模块。它带有一个额外的硬件串行端口,用于连接 GSM 模块。
该设备的电源是 3.7V 18650 锂离子电池,电流为 2000mah。
该电池可以通过微型 USB 端口充电。本项目使用的充电控制器为TP4056。
TP4056 模块输出的功率对于Arduino 的Vin实际上是不够的。所以我们使用了这个微型升压转换器模块。
为了向 firebase 发送通知,我们实际上使用了 sim800l GSM 模块。该模块来自 Simcom,可为任何微控制器提供 GSM 功能,这意味着它可以连接到移动网络以接听电话和发送和接收文本消息,还可以使用 GPRS、TCP 或 IP 连接到互联网。Arduino 和 GSM 模块之间的通信是串行的。
我们设计并 3D 打印了这些微型外壳,用于固定所有硬件元件。这可以很容易地连接到使用接线带的任何包装上。
然后我们将所有的元素一一固定在盒子里,并绑在包裹上。
- 谷景成功解决小家电工字三脚电感包装运输难题
- AI遇冷?2023从融资再看AI“芯”赛道? 2次下载
- 维修提升机轴径磨损还在用补焊? 0次下载
- GTS激光跟踪仪服务风电行业,提升百米风机叶片运输安全
- 资产监测设备中关于供电不稳导致MCU重启问题
- 高速信号的传输过程分析资料下载
- 在生成中兴概念过程中进行规则提取的算法 5次下载
- 画PCB过程中注意细节的要领资料下载
- 使用无线传感器网络实现危险物在运输过程的监控系统 5次下载
- 光缆在运输及安装过程中应注意的问题 12次下载
- 电路安装过程中的四大保护电路 13次下载
- 无线通讯模块CC1100在油品运输车辆数据采集中的 36次下载
- RFID在血液运输过程中的应用
- 智能电位器在超细漆包线拉丝过程中的应用
- 包装运输安全管理制度
- 电气设备保护有哪些 6551次阅读
- CVD过程中的等离子工艺 2184次阅读
- 晶闸管保护电路分享 2046次阅读
- 晶闸管的保护方法 4230次阅读
- FPGA设计过程中常用的FIFO 2307次阅读
- 镍镉电池充电基础知识 1.2w次阅读
- 电源研发的过程中的常见问题 3034次阅读
- 电力系统传输过程的一次电路图 5282次阅读
- 基于物联网技术的冷链车监控系统的组成与功能分析 1559次阅读
- 变频器在运输途中容易损坏吗 3665次阅读
- 电动机什么时候需要干燥_快速干燥电动机的方法 3466次阅读
- 锂电池并联充电时保护板均衡原理 3w次阅读
- 物联网技术在药品运输中起什么作用? 3724次阅读
- 各种静电防护措施,ESD的含义及三种型式 2.8w次阅读
- 电动机在运行过程中比较常见的故障处理方法 1w次阅读
下载排行
本周
- 1山景DSP芯片AP8248A2数据手册
- 1.06 MB | 532次下载 | 免费
- 2RK3399完整板原理图(支持平板,盒子VR)
- 3.28 MB | 339次下载 | 免费
- 3TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 4DFM软件使用教程
- 0.84 MB | 295次下载 | 免费
- 5元宇宙深度解析—未来的未来-风口还是泡沫
- 6.40 MB | 227次下载 | 免费
- 6迪文DGUS开发指南
- 31.67 MB | 194次下载 | 免费
- 7元宇宙底层硬件系列报告
- 13.42 MB | 182次下载 | 免费
- 8FP5207XR-G1中文应用手册
- 1.09 MB | 178次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33566次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21549次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6656次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537798次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420027次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191187次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183279次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多