BME688数字鼻子:用博世BME688传感器和AI技术检测不同的气味模式

BME688数字鼻子应用于 码头 使你的 BME688 嗅觉的传感器!我们在pi3g e.K.提供了一个 即插即用的BME688分线模块,你可以把它直接连接到Raspberry Pi的头。它连接了 BME688 使用I2C连接到你的Raspberry Pi。继续阅读以了解如何使用我们的 码头 网络界面,教你的传感器如何区分多达四种气味。

这就是现代的魔术!在这个有趣的 "魔术表演 "视频中,看我演示BME688的功能。

你想自己施展一些魔法吗?

在你登录到你的 码头 帐户并连接你的RaspberryPi,从 "我的Raspberry Pis "中选择它。你会看到一个可用于你的Raspberry Pi的应用程序列表。点击BME688 DigitalNose应用程序,显示其功能。

使用Boschs AI Studio来训练你的气味检测算法。DigitalNose应用程序允许你上传该算法,标记你的类别,并在一个网络界面上显示输出数据。

我们已经提供了样本文件,以方便您使用。

BME688数字鼻图标
BME688数字鼻图标

安装和设置

关闭Raspberry Pi的电源,并连接到 BME688 模块。请参考你的供应商的说明,如何做到这一点。

pi3g-bme688-breakout-board-raspberry-pi
pi3g BME688分线模块连接到Raspberry Pi 3B+:它可以简单地连接到GPIO头。注意这个特殊的方向,这样SoC就不会扭曲BME688的热量测量值了。

请注意。 BME688也支持SPI操作。然而,这个应用程序只支持I2C操作。

给你的Raspberry Pi重新上电。到这个时候 码头 希望已经安装了。除了PiCockpit之外,你不需要安装任何软件,这个应用程序就可以工作。

打开BME688 DigitalNose应用程序,并点击设置按钮。

BME688数字鼻设置按钮

这将引导你进入设置页面

启用 BME688 点击 "传感器",就可以看到 启用传感器 拨动。

检查I2C地址是否正确。(对于pi3g BME688分线板,默认为0x77 - 这可能取决于你的供应商)。

等待数据。还没有收到来自传感器的数据

你将被要求同意 博世BSEC许可证.这是必要的,因为传感器的气味检测功能依赖于博世专有的BSEC 2.0软件。

博世BSEC许可协议
博世BSEC许可协议

请注意。 BME688数字鼻应用和BME688空气流量计应用 不能 同时运行。

传感器现在应该被启用,并且 码头 将尝试记录数据。如果可以到达传感器,下面的信息应该更新为 收到的数据。... 含有最近收到的数据包的时间戳。

收到的数据和时间戳

请注意。 数据包频率取决于设置 - 一次测量通常需要10秒左右。

启用高级视图(显示所有数据)。

启用高级视图将显示BSEC 2.0软件能够计算的所有参数。这些参数包括IAQ(空气质量指数)、C02当量等等。

启用高级视图
启用高级视图

这些是在PiCockpit的BME688 DigitalNose应用程序中使用高级视图时的所有额外测量结果

  • 空气湿度
  • 空气湿度(原始)
  • 气压
  • 空气质量 (IAQ)
  • 空气质量(IAQ)的准确性
  • 空气温度
  • 气温(原始)
  • 呼出的VOC当量
  • 口气VOC当量的准确性
  • 二氧化碳当量
  • 二氧化碳当量精度
  • 压缩气体值
  • 压缩气体值的准确性
  • 气体百分比
  • 气体百分比精度
  • 耐气性(原始)
  • 样本数
  • 静态IAQ(原始)
  • 静态IAQ精度
  • 时间戳

请注意。 为了提高二氧化碳的测量精度,我们还提供了一个 二氧化碳传感器应用!

嗅觉检测设置

嗅觉检测设置是上传你训练好的算法和标记你的类别的地方。我们目前使用的是BSEC 2.0.6.1,所以请确保你导出的算法符合这个版本(至少需要 博世AI Studio 1.6.0).

AI Studio将算法导出为BSEC配置文件,文件结尾为 .conf.要上传算法,只需点击回形针图标并选择你的文件。

上传你的训练算法
上传你的训练算法

ǞǞǞ BME688 传感器最多可以区分四个不同的等级。选择您想命名的气体估计等级。点击 X 来删除该名称。

为你的班级命名

在气体估计类下面,你可以添加一些注释。

说明并为您的笔记留出空间
说明并为您的笔记留出空间

重置所有设置

ǞǞǞ 重置所有设置 按钮位于页面的底部。它允许你将设置重置为出厂默认设置。

要小心,设置不能被恢复。

这样就完成了设置。按下 显示嗅探结果 顶端的按钮返回数据屏幕。

返回到数据屏幕
返回到数据屏幕

嗅探结果

在嗅探结果下,你可以看到最近的数据的柱状图。小数点后的数值显示了每个类别存在的概率。

嗅探结果的柱状图
嗅探结果的柱状图

描述和说明

在Sniff结果的下面,你可以找到一个线形图。它显示了一个选定值的历史数据。将鼠标悬停在其中一个点上,显示该数据点的描述。

历史数据线图
历史数据线图

通过浅蓝色的线图手柄,你可以放大到一个特定的时间段和一个特定的数值范围。

将白色手柄拖到所需的最小值和最大值。

线形图手柄,用于放大图
线形图手柄,用于放大图

使用 隐藏LINECHART 按钮来隐藏折线图。

通过在数据表中选择一个选项来改变线图中显示的数值。

数据

数据表显示所有捕获数据的当前值。最好是在 启用高级视图 否则,大部分数值将是不适用的。

按下 显示我 在你感兴趣的数值后面的按钮来显示它在上面的折线图。

数据表和显示我按钮
数据表和显示我按钮

使用放大镜图标来关注一个特殊的值

开始输入你感兴趣的数值的名称,以缩小选择范围。
开始输入你感兴趣的数值的名称,以缩小选择范围。

请注意。 历史数据只在应用程序打开时才会被保存下来。一旦你导航离开,或关闭标签,数据就会永远丢失。

常见问题

BME680是否也支持?

不,BME680是 不是 支持,因为估计类别需要传感器在并行模式下运行,这是BME688引入的一个功能。但是通过我们的定制脚本,您可以使用您的BME680来记录数据以训练您的分类算法(尽管记录有意义的样本数量需要更长的时间)。

我如何记录训练数据?

最简单的方法是使用博世的 BME688气体传感器开发套件.另一个选择是使用我们的定制脚本和任何BME68X分线板。阅读 这篇博文 关于如何记录数据的深入解释。

请注意。 要使用该脚本,传感器需要通过I2C(而不是SPI)连接到你的Raspberry Pi。

我在哪里可以买到兼容的传感器?

我们(pi3g e.K.)已经开发了 一个即插即用的BME688模块 用于Raspberry Pi的GPIO端口。

其他供应商,如Pimoroni和Adafruit,也出售BME688和BME680分线板。

我可以同时使用DigitalNose应用和Airmeter应用吗?

没有你 不能 因为它们在同一个BSEC实例上运行,而且很可能在同一个I2C地址上运行。在未来,我们可能会让两个应用程序同时运行,只要你使用两个不同I2C地址的传感器就可以了。

如果你启用高级视图,DigitalNose应用程序将显示BSEC能够计算的所有数值。

为什么我的嗅觉结果不准确?

有许多可能的原因。这些是你可以做的一些事情,以提高准确性。

  • 使用更多的训练数据
  • 使用更多样化的样本
  • 确保测试环境与录音环境没有太大差别
  • 在AI Studio中检查cofusion矩阵
  • 等待5分钟,让传感器升温并适应环境。

请注意。 混合气体需要一分钟时间才能进入传感器外壳内。

BME688 DigitalNose应用程序的配置文件样本。