基于物联网的有毒气体监测器的制作

电子说

1.3w人已加入

描述

步骤1:使用硬件实现

主要处理该项目的一部分由 MediaTek LinkIt ONE 委员会完成。

Mediatek LinkIt ONE板连接有气体传感器,即 Grove LPG sensor 和 Grove Air Quality Sensor 。传感器的读数将发送到Ubidots可能的服务器。

在图片中,您可以看到更多的气体传感器,例如MQ-7,MQ-135和MQ-138。

但是LinkIt ONE板只有3个模拟引脚。 A0,A1和A2,因此最多可以连接3个传感器。

由于气体传感器的输出是模拟电压,而我们的板是数字系统(微控制器)。

我们需要转换将模拟电压转换为数字值。这可以通过使用板载10位ADC来完成。

有关ADC和气体传感器的更多信息将在后面说明。

步骤2:ADC-模拟到数字转换

物联网

ADC代表模拟到数字转换,执行转换的设备称为模数转换器。

使用最广泛的ADC芯片是德州仪器(TI)的 ADC0804 和 ADC0808 。

我们为什么需要 ADC ?

我们生活的世界是模拟的,即每件事都是时间连续的。为了使这些模拟信号与微控制器之类的数字设备兼容,这些控制器只能理解数字信号,例如 ‘0’s 和‘1’s 。

因此,为了将模拟信号转换为数字形式,我们需要使用ADC。

A/D转换如何执行?

将模拟信号转换为数字形式涉及两个步骤-

1)采样

采样意味着将信号划分为较小的时隙。例如,如果我们有一个在时域中连续的某个频率的正弦波,我们将对其进行采样,即,我们将以一定的相等时间间隔获取正弦波的振幅值,因此它看起来有点像图片中所示

2)量化

第二步是量化获得的幅度值。与采样时一样,获取的幅度可以是任何非理性值,例如 pi(22/7)或1.33333或sq.root(2) 等。/p》

这些值将永远不会终止,因此如果您想 存储 ,它们将需要 无限数量的内存

所以我们需要将数字四舍五入到最接近的位置。

这完成了A/D转换部分。

但这是只是理论?

如何实际执行ADC?

答案是通过使用诸如ADC0804或ADC0808之类的IC。

最近的诸如Arduino,AVR之类的微控制器系列,LinkIt ONE具有板载ADC,我们将在我们的项目中使用它。

步骤3:使用LinkIt ONE板载ADC

LinkIt一块板具有3个模拟输入引脚,这意味着最多可以与该板连接3个模拟设备。

ADC的 分辨率 一词也很重要。

船上ADC具有 10位分辨率 ,这意味着输入模拟电压将以0-1023范围内的值表示,即总共1024个值

如何获取?

很简单。 10位ADC意味着我们将获得10位数字值。即2 ^ 10 = 1024个值。

在十进制范围内,它将是0到1023。

它如何分配数字值?

对于0V的模拟输入电压,我们将获得对应的数字值为0。模拟输入电压,即5V,我们将获得最大数字值,即1023。

任何介于0V-5V之间的模拟输入电压,其数字值都将介于0到1023之间。

这是公式

ADC读数=(1024 *模拟输入电压)/5

因此,如您所见,对于0V,您将获得)当ADC读数为5V时,您将获得1024(实际上是1023,因为此处从0开始计数。)

步骤4:气体传感器:它们如何工作?

气体传感器有多种类型。它们根据检测大气中存在的气体的方式进行分类。

1)电化学类型

MQ传感器系列属于以下类别:气体传感器。这些气体传感器具有通常由 SnO2或氧化锡(IV) 制成的传感元件,这是正确的IUPAC名称(国际纯粹与应用化学联合会)或通常称为 氧化锡 (不是 satan- ic)。

SnO2层是

在这种情况下,这种现象被称为吸附,它与有很大不同。这种陶瓷基体通常由氧化铝(Al2O3)制成。 吸收。

吸收是一种表面现象,这意味着气体分子仅堆积在SnO2层的表面上。

要提高吸附速率,我们需要加热元件。这是通过MQ气体传感器上的加热线圈(丝网)完成的。

加热可提高吸附速率。 有一个特定的 pre每个传感器在使用前的加热时间。

随着气体分子开始聚集在表面上,我们得到与浓度成比例的电压作为输出

这是我们将要测量以检测气体的电压。

现在由于吸附,即分子积聚在传感器的传感元件上传感器,这些传感器在几个月后变得无用,需要更换新的传感器。您无法清洁传感器,因为一切都发生在分子水平上。

这些是电子爱好者最广泛使用和可用的传感器。

除了这些传感器以外,我们还有其他四种类型

2)红外

3)红外成像

4)半导体和

5)全息

现在,如果您看到任何MQ气体传感器将具有 6个引脚,其中 4 用于加热目的和其他 2 用于输出电压和接地。

在图片中,您可以看到MQ-8气体传感器的6个引脚。

第二张图片显示了对H2高度敏感的MQ-8气体传感器。它也可以用于液化石油气的检测。

作为参考,我附上了该数据表。从数据表中可以清楚地看出,使用单个MQ-8传感器可以检测到多种类型的气体。

在继续之前,我建议您阅读如何 工程师的车库 和 Seeed Studio 的气体传感器工作和如何选择气体传感器 。

http://www.engineersgarage.com/insight/how-gas-sen 。..

http://www.seeedstudio。 com/wiki/How_to_choose_A_Ga 。..

步骤5:硬件要求

变送器侧

Mediatek LinkIt ONE板

Grove空气质量传感器

Grove LPG传感器点击的

软件/服务

Ubidots 的

步骤6:在Ubidots上注册

第一步是创建一个免费的Ubidots帐户!!

Ubidots 是我们将要使用的云服务提供商。

您可以自由使用任何其他服务。

如果您重新使用其他服务。

请转到http://www.ubidots.com

在网站上注册。

然后按照图片中的说明进行操作。

或按照以下说明操作-

1)在Ubidots上注册

2)在右上角单击+符号以添加新来源。

3)命名您的来源,例如Intel Edison,Arduino等。

4)单击来源以添加新变量

5)选择变量的类型作为仪表并设置最小和最大限制

6)记下创建的每个变量的变量ID。

7)现在转到您的个人资料,并在API密钥中记下令牌ID。

请注意图片来自我的其他项目。一切保持不变,只是您需要指定不同的名称并相应地选择显示类型。

记下变量id和auth。令牌编号。您必须在程序中输入它们。

每个人的数字都不同。不要复制图像。

步骤7:变送器

Grove LPG传感器连接到A0引脚和Grove空气质量传感器连接到Mediatek LinkIt ONE板的A1引脚上。

analogRead()函数执行必要的模数转换。

获得的数字值介于 0-1023 (总共1024个),因为 ADC的分辨率为10位。

使用公式

读数%=(ADC读数/1024)* 100

用于变送器的程序是用Arduino IDE编写的,并附加了.ino文件。

记住要在代码中进行以下更改。

1)WiFi AP名称

2)WiFi密码

3)var ids

4)令牌ID

,然后将代码上传到您的开发板上。

第8步:测试

这是我的通用屏的一小段录像,向您展示了当任何传感器值发生变化时仪表读数如何变化。

出于演示目的,我将A0和A1引脚直接连接到板上的3.3V和5V引脚。

注意: 只要开发板通过USB连接到计算机,您也可以在Arduino串行监视器上看到这些值。卸下USB并使用电池供电后,它将不会在串行监视器中打印值。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分