当前位置:首页 > 工业控制 > 电路设计项目集锦
[导读]蜜蜂每年为全球经济贡献5770亿美元。然而,大多数养蜂人(尤其是业余爱好者)直到打开蜂箱才知道蜂巢里发生了什么。到那时,蜂群已经离开,或者蚁群已经饿死了。

蜜蜂每年为全球经济贡献5770亿美元。然而,大多数养蜂人(尤其是业余爱好者)直到打开蜂箱才知道蜂巢里发生了什么。到那时,蜂群已经离开,或者蚁群已经饿死了。

商业监控系统的成本为每个蜂箱500欧元以上。它们是为工业生产设计的,不是为后院有八个蜂箱的人设计的。

我们需要一些不同的东西:一个可以在冬天生存的系统,部件成本低于50美元,并提供实际的洞察,而不仅仅是每小时上传的温度读数。

解决方案

HappyBees直接在Raspberry Pi Pico 2w上运行edge ML。它会倾听蜂群的声音特征,区分正常的嗡嗡声和蜂群前的管道,只在有重要事情发生时提醒你。

关键观点是:我们不会将原始音频流传输到服务器。我们在本地处理所有内容,6秒的音频变成20个特征,通过TFLite模型运行,并在200毫秒内生成分类。本地web服务器只看到结果。

技术规格:

•通过DMA捕获16kHz音频(每次推断96000个样本)

•自定义DSP:二阶巴特沃斯高通(100Hz),三阶低通(6kHz)

•512点FFT, Hanning窗口,每次捕获平均187个窗口

•TensorFlow Lite微推理RP2350

•WiFi遥测FastAPI + TimescaleDB后端

•实时仪表盘

硬件

组件

为什么是Pico 2w ?RP2350具有520KB SRAM。我们的音频缓冲区是192KB。ESP32的320KB是不够的。Pico也有比ESP32-S3更好的ML部署文档和社区工具。

布线

Pico连接:

麦克风前置放大器:

SPW2430输出微弱信号。我们通过一个非反相放大器输入它:

•Mic输出→10µF交流耦合→运算放大器(+)输入

•R1/R2分压器设置1.65V直流偏置

•增益= 1 + (100k/5k) = 21倍

•通过1kΩ→GP26过滤输出

这种收获很重要。该模型在不同的麦克风数据上进行了训练。我们的运放电路产生的信号强度为3-4倍。我们在软件中使用增益因子(默认为0.35)进行补偿。

固件

建造

Flashing

•Hold BOOTSEL on Pico

•插入USB

•beewatch_firmware副本。uf2到挂载的RP2350磁盘

配置

通过串口连接:

配置WiFi和服务器:

串行命令

DSP管道

信号处理链很重要。以下是每个音频样本的情况:

DC去除:减去平均值(对于以1.65V为中心的12位ADC,通常为~2048)

增益补偿:缩放0.35以匹配训练数据的幅度

高通滤波器(100Hz,二阶巴特沃斯):

低通滤波器(6kHz,三阶巴特沃斯):两个级联biquads

FFT:使用Hanning窗口时的512点,平均每6秒捕获187个非重叠窗口。

我们关心的频率箱:指数4-19,对应125-594 Hz。这是蜜蜂的声音特征所在。

ML模型

Anete使用Edge Impulse的BYOM (Bring Your Own Model)工作流程开发了夏季和冬季模型。这让我们可以用Python进行训练,并自动为Pico生成优化的c++。

夏季模型(蜂群探测)

•输入:20个功能

•温度、湿度、小时

•尖峰比(关键特征)

•16个FFT频仓

架构:Dense 64→Dense 32→Softmax 2 (Normal/Event)

关键洞察:通过系统测试,我们发现该模型主要使用尖峰比-电流音频能量除以滚动平均值。FFT箱的影响最小。

•峰值< 0.7:活动减少→正常

•spike≈1.0:稳态→模棱两可(默认为Event)

•峰值> 1.3:活动增加→事件

这解释了为什么新启动总是预测“事件”,没有历史记录,峰值比率为1.0。5-6个读数后,滚动平均值趋于稳定。

冬季模型(异常检测)

在健康冬季簇数据上训练的自动编码器:

•输入:5个功能

•温度、湿度

•温度稳定性(超过12个读数的变化)

•加热器功率(183Hz, 213Hz, 244Hz的总和-“集群嗡嗡声”)

•加热器比(加热器功率/总音频密度)

输出:输入的重构

异常评分:输入和重建之间的MSE。高MSE意味着模型不能识别模式:潜在的群体死亡、饥饿或集群不稳定。

后端

堆栈

•用于API的FastAPI (async, auto-documented)

•用于时间序列存储的TimescaleDB(带超级表的PostgreSQL)

•Dash/ plot用于实时仪表板

为什么不是Grafana?我们认为它增加了部署的复杂性,而Dash则为我们提供了简单、纯粹的端到端Python。

快速启动

1. 启动数据库:

2. 开始后端:

3. 开始指示板:

4. 用模拟装置测试:

API端点

命令队列使用轮询(每隔2s)而不是WebSockets。更简单的固件,通过NAT工作,2秒的延迟对我们的用例来说很好。

故障排除

“总是预测事件”

•正常,重新开始。运行5-6次推理来构建历史。

•或者:在一次捕获过程中制造噪音,然后安静下来。尖峰比会下降。

“FFT箱子太高”

•低增益:g0.25

•目标:安静房间的箱子0.02-0.06

“Pico无法连接WiFi”

•必须是2.4GHz (Pico不支持5GHz)

•检查SSID/密码拼写

本文编译自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 隧道灯 驱动电源
关闭