当前位置:首页 > 工业控制 > 电路设计项目集锦
[导读]神经网络分类器使用Edge Impulse进行训练,并针对ESP32-S3的部署进行了优化。训练进行了50个周期,学习率为0.005,使用int8量化来减少内存占用并提高嵌入式硬件上的推理效率。模型的输入由1716个MFCC特征组成,通过两个带有dropout的1D卷积和池化层进行处理以减少过拟合,然后是一个包含normal和stress两类的输出层。模型架构故意保持紧凑,以平衡分类性能和资源约束。

关键特性

•边缘AI蜂窝应力检测使用音频信号

•ESP32-S3 AI摄像头与PDM麦克风输入

•使用边缘脉冲的设备上推理(无云ML)

•信号门控(RMS + ZCR)忽略静音和无关噪声

•稳健的决策逻辑使用M-of-N投票和冷却

•通过MQTT (HiveMQ公共代理)进行全球监控

•低延迟,低带宽,适合远程部署

数据准备

BeeGuard系统使用“是否要蜜蜂”数据集进行训练,该数据集是一个开放的音频数据集,包含在不同蜂巢条件下收集的真实蜂巢录音。

该数据集包括:

•长时间的蜂巢录音

•自然背景噪音和环境变化

•与正常和压力蜂群活动相对应的声音模式

为了将原始录音转换为适合Edge AI训练和部署的数据集,开发了两个自定义Python脚本。

完整数据集准备(prepare_beeguard_dataset.py)

这个脚本负责将原始蜂巢声音数据集转换为边缘脉冲准备的音频数据集。

脚本执行的主要任务:

•将所有音频文件标准化到16 kHz单声道,匹配固件录制配置

•将长录音分割为2秒音频窗口,与ESP32-S3上使用的实时推理窗口保持一致

•自动组织音频片段到标签类文件夹:正常或压力

•生成一个干净的,可复制的目录结构,可以直接上传到边缘脉冲

通过自动分割和标记,该脚本确保训练数据与设备上的音频管道紧密匹配,并降低人为标记错误的风险。

快速迭代子集创建(make_ei_subset_2h.py)

训练和实验大型音频数据集可能很耗时。为了加速开发,使用第二个脚本来生成轻量级训练子集。这个脚本:

•获取由prepare_beeguard_dataset.py生成的完全准备好的数据集

•从完整数据集中选择一个有时间限制的子集(约2小时的音频)

•保持正常和压力等级之间的平衡分布

•输出一个紧凑的数据集,在边缘脉冲内优化快速迭代

这种方法允许在对完整数据集执行最终训练之前对预处理参数和模型架构进行快速实验。

边缘脉冲:数据预处理

将数据集上传到Edge Impulse后,使用Mel频率倒谱系数(MFCC)从原始蜂巢音频信号中提取有意义的特征。

mfc非常适合这项任务,因为它们捕获蜂群声音的频谱特征,同时保持嵌入式设备的计算效率。

MFCC配置

预处理流水线配置如下:

•系数:13

•帧长/步幅:30毫秒/ 15毫秒

•滤波器组:32

•FFT长度:256

•频率范围:100hz - 8khz

•预加重:0.97

选择这些参数是为了平衡噪声鲁棒性、特征分辨率和设备上性能。

设备内置性能

边缘脉冲估计表明预处理阶段需要:

~968 ms DSP时间

~ 29kb峰值RAM

这证实了整个预处理管道可以在ESP32-S3上高效运行,实现完全的设备上推理,而不依赖于云。

边缘脉冲:模型训练

神经网络分类器使用Edge Impulse进行训练,并针对ESP32-S3的部署进行了优化。训练进行了50个周期,学习率为0.005,使用int8量化来减少内存占用并提高嵌入式硬件上的推理效率。模型的输入由1716个MFCC特征组成,通过两个带有dropout的1D卷积和池化层进行处理以减少过拟合,然后是一个包含normal和stress两类的输出层。模型架构故意保持紧凑,以平衡分类性能和资源约束。

在验证数据集上,训练模型的准确率为84.3%,损失为0.39,加权f1分数为0.84。当使用Edge Impulse的EON编译器编译时,该模型显示出强大的设备上性能,推理时间约为9 ms,峰值RAM使用量约为14.6 KB,闪存使用量约为46.5 KB。这些结果证实了该模型适用于ESP32-S3上的实时、设备上的蜂窝应力检测。

部署

经过训练和验证,Edge Impulse模型被部署为c++推理库,并集成到基于arduino的固件中,运行在ESP32-S3 AI相机上。使用I2S接口在16 kHz从PDM麦克风实时捕获音频数据,并在2秒窗口内处理,与数据集准备和模型训练期间使用的配置相匹配。

在推理之前,每个音频窗口都经过轻量级的设备上预处理,包括DC偏移去除,增益归一化和基于RMS和过零率(ZCR)的信号门控。此门控步骤防止了对沉默或无关噪声的不必要推断,并提高了整个系统的鲁棒性。一旦检测到有效的蜂群声音,处理后的音频被传递给边缘脉冲分类器来估计压力的概率。

为了进一步减少误报,固件采用M-of-N投票机制,在确认警报之前需要连续进行多次压力检测,并有一段冷却期以避免警报泛滥。当确认压力状况时,设备使用MQTT向公共HiveMQ代理发布遥测和警报,从而实现从任何地方进行远程监控。所有推理都完全在设备上运行,MQTT仅用于轻量级数据传输,使系统适合低功耗和远程蜂窝部署。

MQTT (HiveMQ)配置+主题

这一部分将设备配置为向HiveMQ公共代理发布遥测和警报,使用简短的MQTT主题来保持负载轻量级。

特征提取:RMS + ZCR(信号门控)

在运行ML模型之前,固件计算两个简单的音频特征- RMS(信号能量)和ZCR(过零率)。这些用于门控推理和避免处理沉默或无关噪声。

投票机制(M-of-N) +揭牌概念

原始分类器输出可以在不同窗口之间波动,因此BeeGuard实现了M-of-N投票机制,只有在重复检测后才能确认压力。

冷却以避免警报泛滥

即使在确认压力后,固件也会强制执行一段冷却期,所以如果蜂巢保持压力一段时间,警报不会向代理发送垃圾邮件。

MQTT发布:遥测+警报

固件发布:

•连续遥测(bg/tel),包括RMS/ZCR +概率+投票

•确认警报(bg/alert)时,压力检测和投票+冷却允许它

结果与验证

在测试过程中,BeeGuard可靠地检测到与压力有关的蜂房声音,而忽略了寂静和无关的噪音。RMS/ZCR门控显著减少了不必要的推断,压力警报只有在反复确认后才会触发。使用MQTT Explorer成功地实时接收了MQTT遥测和警报。

电源和边缘优势

所有音频处理和推理都在ESP32-S3上本地执行,从而消除了对连续云流的需求。MQTT仅用于传输紧凑的遥测和警报,使系统适用于低功耗、远程和潜在的太阳能蜂窝部署。

局限性和经验教训

目前的系统依赖于公开的蜂箱音频数据,并将受益于在真实蜂箱中捕获的额外录音。环境因素(如风和雨)也会影响音频质量,应该在未来的迭代中加以解决。

本文编译自hackster.io

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭