如何正确将传感器连接到物联网上

网友投稿 321 2022-11-25

如何正确将传感器连接到物联网上

物联网从测量开始。能够从世界上任何地方的设备获取数据,通过互联网连接到“大数据”信息系统,为控制和优化提供了基础。这是全球智能城市和智能电网发展的核心。

在某些情况下,将传感器连接到物联网相对简单,而在其他情况下需要更多考虑。 CMOS工艺和封装技术的改进允许更高的集成度,因此传感器可以提供具有微控制器可接受的协议的稳压数字输出。然后将数据打包为物联网,理想情况下使用IPv6协议进行直接连接。临时步骤将本数据打包为本地网络,然后使用本地网关将数据包的报头数据转换为IPv6,以便通过Internet进行更广泛的访问。

ADT7320就是一个高精度数字温度传感器,具有宽工业温度范围(-40°C)至+ 150°C),这是物联网应用所必需的,因为传感器可能放置在极端恶劣的环境中。

该传感器采用4×4 mm LFCSP封装,内置一个带隙基准电压源,一个温度传感器和一个16位ADC,用于监测温度并将其数字化,分辨率为0.0078°C。 ADC分辨率默认设置为13位,分辨率为0.0625°C,但用户可以通过串行接口进行更改。

对于数据转换器,通常有四种工作模式:正常模式,单次模式,1 SPS模式和关机模式。这些模式通常适用于任何数据捕获设备,是开发物联网传感器节点的关键设计元素。

连续转换

在连续转换模式(默认上电模式)下,ADT7320运行自动转换序列。在此自动转换序列期间,转换需要240 ms才能完成,ADT7320将持续转换。这意味着一旦完成一次温度转换,就会开始另一次温度转换。每个温度转换结果存储在温度值寄存器中,可通过SPI接口获得,读取操作提供最新的转换结果。

将测得的温度值与临界温度限值(存储在16-中)进行比较位TCRIT设定值寄存器),高温限制(存储在16位THIGH设定值寄存器中)和低温限制(存储在16位TLOW设定点寄存器中)。如果测量值超过高温或低温限制,则INT引脚被激活;如果超过TCRIT限制,则CT引脚被激活。 INT和CT引脚的极性通过配置寄存器进行编程,配置寄存器也可用于编程中断模式。

当超出温度阈值时,可用于为IoT监控应用程序提供标志。 。连续模式以低占空比运行以降低功耗,当超过阈值(太热或太冷)时,可以使用温度数据将数据包发送到监控应用程序。

单次模式

虽然连续转换是默认模式,但当远程监控应用程序查询节点时,IoT应用程序可能更适合使用一次性读取。

当启用单次触发模式时,ADT7320立即完成转换,然后进入关断模式以节省功耗。通过将配置寄存器(寄存器地址0x01)的位[6:5]设置为01来启用此功能。

写入操作模式位后,等待至少240 ms再读回温度来自温度值寄存器。此延迟可确保ADT7320有足够的时间上电并完成转换。要获得更新的温度转换,请将配置寄存器的位[6:5]复位为01。

微控制器接口

所有数据都通过四线SPI接口链接到微控制器(图2)。该接口具有用于向器件写入数据的数据输入引脚(DIN),用于从器件读取数据的数据输出引脚(DOUT),以及用于为数据输入和输出提供时钟的串行数据时钟引脚(SCLK)。芯片选择引脚(CS)启用或禁用串行接口。 CS是正确操作接口所必需的。

数据在SCLK的下降沿输出,数据在SCLK的上升沿输入器件。总线上的所有数据事务都从主机将CS从高电平变为低电平并发出命令字节以指示事务是读还是写,并提供寄存器的地址进行数据传输。

图2:从ADT7320数字温度传感器到物联网传感器节点中的微控制器的接口。

位C7,位C2,位必须将C1和命令字节的位C0都设置为0才能成功开始总线事务,因为如果将1写入任何这些位,接口将无法正常工作。

位C6是读/写位,其中1表示读,0表示写。位[C5:C3]包含目标寄存器地址,每个总线事务可以读取或写入一个寄存器。

湿度传感

数字采用相同的方法湿度传感器,如Measurement Specialties的HTU21D。它嵌入在可回流焊接的双扁平无引线(DFN)封装中,封装尺寸为3 x 3 mm,高度为1 mm,提供数字I²C格式的校准线性化信号。

HTU21D传感器是专用的低功耗湿度和温度即插即用传感器,适用于OEM应用,需要通过与微处理器直接接口的物联网传感器节点进行可靠和精确的测量。

串行时钟输入(SCK)用于同步微控制器和HTU21D传感器之间的通信(参见图3)。由于接口由全静态逻辑组成,因此没有最小SCK频率。

图3:在IoT传感器节点中通过I²C将HTU21D湿度传感器连接到微控制器。

DATA引脚用于传输数据进出设备。为了向HTU21D传感器发送命令,DATA在SCK的上升沿有效,并且在SCK为高电平时必须保持稳定。在SCK的下降沿之后,可以改变DATA值。为了安全通信,DATA在SCK的上升沿和下降沿之后对tSU和tHD有效。为了从HTU21D传感器读取数据,DATA在SCK变为低电平后对tVD有效,并在SCK的下一个下降沿保持有效。

SCK上的外部上拉电阻(例如10kΩ)是只需将开路集电极或开漏技术微控制器拉高信号。在大多数情况下,上拉电阻内部包含在微控制器的I/O电路中。上电后,器件需要最多15 ms而SCK为高电平才能达到空闲状态(休眠模式),以便准备接受来自控制器的命令。在此之前不应发送任何命令。建议在开始时进行软复位,在SCK为高电平时降低DATA线,然后降低SCK。要停止传输,必须发出停止位。它包括将DATA线拉高而SCK为高电平,然后将SCK拉高。

当HTU21D传感器通过与标准I²C协议通信运行时,可以使用8位CRC来检测传输错误对于传感器传输的所有读数据。相对湿度的默认分辨率设置为12位,温度读数的默认分辨率设置为14位。测量数据以双字节封装传输,采用8位长度的帧,其中最高有效位(MSB)首先被传输(左对齐)。每个字节后跟一个应答位。在计算物理值之前,必须将两个状态位(LSB的最后一位)设置为“0”。

压力传感

另一个带I²C的传感器是GE Sensing的NPA范围差压传感器。 NPA系列采用14引脚表面贴装SOIC封装,提供压力表,绝对压力或差压范围,带有mV,放大模拟或数字输出。

NPA-700系列提供数字输出使用行业标准I²C协议输出数据。支持高达400 kHz的比特率,与标准模式(Sm)和快速模式(Fm)标准兼容。设备的从地址为0x28作为标准配置。为了从NPA传感器读取数据,I²C主器件发送8位,7位从器件地址(标准器件为0x28),第8位= 1,指定读取请求。然后NPA传感器发送确认(ACK)以指示成功。

NPA有三个I²C读命令:

Read_DF2:压力(2个字节)

< li> Read_DF3:压力(2字节)+温度(1字节)

Read_DF4:压力(2字节)+温度(2字节)

数据的数量NPA传感器返回的字节由I²C主设备发送NACK和停止条件确定。传感器首先发送压力数据的高字节,然后是低字节。数据分辨率为14位,因此高字节的高两位始终为零填充。数据包中的字节之间有一个半停止的位时间。这意味着,对于半位宽的时间,信号电平很高。组合高和低数据字节提供对应于压力读数的14位数字。

图4:显示数字接口的NPA700压力传感器。

最好将数字信号连接到微控制器上能够在下降沿产生中断的引脚。当起始位的下降沿发生时,它会使微控制器跳转到其ISR(中断服务程序)。 ISR进入计数循环,增加存储器位置(Tstrobe),直到它看到数字信号上升。当获得Tstrobe时,ISR可以简单地等待接下来的9个下降沿(8个数据,1个奇偶校验)。在每个下降沿之后,它将等待Tstrobe到期,然后对下一位进行采样。数字线路由强大的CMOS推/拉驱动器驱动;当数字信号在嘈杂的环境中驱动长(> 2 m)互连到微控制器时,奇偶校验位用于错误检查。对于没有噪声干扰的环境中的系统,用户可以选择让微控制器忽略奇偶校验位。

模拟接口

AD7176-2(图5)具有三个或四个 - 导线SPI接口,工作在SPI模式3,可在CS低电平下工作。在此模式下,SCLK空闲为高电平,SCLK的下降沿为驱动边沿,SCLK的上升沿为采样边沿。这意味着数据在下降沿/驱动沿上输出,数据在上升/采样边沿输入。

图5:AD7176 -2用于将模拟传感器连接到IoT传感器节点中的微控制器。

8位只写通信寄存器控制对ADC完整寄存器映射的访问。在上电或复位后,数字接口默认为预期写入通信寄存器的状态,因此所有通信都通过写入通信寄存器开始。

写入通信寄存器的数据决定了访问哪个寄存器以及下一个操作是读还是写。寄存器地址位(RA [5:0])决定读或写操作所适用的特定寄存器。

当对所选寄存器的读或写操作完成时,接口返回其默认状态,它期望对通信寄存器进行写操作。这可用于从传感器捕获模拟数据,并通过SPI接口将其传送到微控制器,以便远程访问数据。这使得更广泛的传感器成为物联网的一部分。

结论

数字处理技术和封装的改进使传感器能够将数字接口集成到同一物体中硅或包含在同一包装中。这允许简化接口,并为物联网开放传感器技术。直接连接到微控制器和网络接口,允许从因特网上的任何地方进行访问,采用不同的方法,需要更多的编程和设备的寄存器结构以及SPI和I²C等协议的知识,这是过去所必需的。使用独立ADC可以允许不具有相同数字接口的模拟设备也包含在物联网传感器节点的开发中。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:(11) Hadoop Java 实现MapReduce HelloWord 单词统计
下一篇:(13) Hadoop Java 实现MapReduce HelloWord 单词统计 更新版 2
相关文章

 发表评论

暂时没有评论,来抢沙发吧~