初级入门篇02----远程检测
注:文中提到的软件及程序源码,请到http://blog.eeecontrol.com/software/下载
1 工作原理
在"《物联网图文教程从入门到精通》初级入门篇01----系统组成及工作原理"中的第2节已经详细讲述了远程检测的工作原理。具体协议详见http://www.eeecontrol.com/help/data.php。下面章节以三易电子工作室提供的官方联网硬件(智能网关)和无线传感器节点为例讲解一下远程检测的详细原理和工作流程。
2 无线模块及传感器介绍
三易电子工作室提供了无线节点模块和多种用于数据采集的传感器。传感器插接到无线节点模块上,组成独立的数据采集节点(简称为无线模块)。各个数据采集节点可以分布在不同的地方采集相关数据。下面将详细介绍温湿度传感器、光敏传感器、热释电传感器、触摸传感器这四种与数据采集相关的传感器。
无线模块平常处于低功耗模式,温湿度模块每隔5S进入一次工作状态,光敏传感器模块、人体红外热释电传感器模块、电容式触摸传感器模块当检测到信号时进入工作状态。各个模块在工作状态时,无线模块上的AVR单片机把NRF24L01转换为发射模式,把采集到的数据通过NRF24L01以无线方式发送到智能网关。数据发送完毕后,单片机把NRF24L01设置为掉电模式,单片机进入睡眠模式。无线模块采用1200mAH锂电池供电,带充电电路,因为模块大部分时间处于低功耗模式,一次充电可用3个月。
2.1 温湿度传感器数据采集
图2-1 温湿度传感器无线模块
2.1.1 产品介绍
DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。
2.1.2 技术规格
供电电压:3.3到5V
供电电流:最大2.5Ma
接口类型:数字
温度范围:0-50℃ 误差±2℃
湿度范围:20-90%RH 误差±5%RH
测量分辨率分别为 8bit(温度)、8bit(湿度)
2.1.3 工作原理
图2-2 温湿度传感器模块参数
PB0 用于微处理器与 DHT11之间的通讯和同步,采用单总线数据格式,一次通讯时间4ms左右,数据分小数部分和整数部分,具体格式在下面说明,当前小数部分用于以后扩展,现读出为零.操作流程如下:
一次完整的数据传输为40bit,高位先出。
数据格式:
8bit湿度整数数据+8bit湿度小数数据
+8bi温度整数数据+8bit温度小数数据
+8bit校验和
数据传送正确时校验和数据等于"8bit湿度整数数据+8bit湿度小数数据+8bi温度整数数据+8bit温度小数数据"所得结果的末8位。
用户MCU发送一次开始信号后,DHT11从低功耗模式转换到高速模式,等待主机开始信号结束后,DHT11发送响应信号,送出40bit的数据,并触发一次信号采集,用户可选择读取部分数据.从模式下,DHT11接收到开始信号触发一次温湿度采集,如果没有接收到主机发送开始信号,DHT11不会主动进行温湿度采集.采集数据后转换到低速模式。
(1)通讯过程如图2-3所示
总线空闲状态为高电平,主机把总线拉低等待DHT11响应,主机把总线拉低必须大于18毫秒,保证DHT11能检测到起始信号。DHT11接收到主机的开始信号后,等待主机开始信号结束,然后发送80us低电平响应信号.主机发送开始信号结束后,延时等待20-40us后, 读取DHT11的响应信号,主机发送开始信号后,可以切换到输入模式,或者输出高电平均可, 总线由上拉电阻拉高。
总线为低电平,说明DHT11发送响应信号,DHT11发送响应信号后,再把总线拉高80us,准备发送数据,每一bit数据都以50us低电平时隙开始,高电平的长短定了数据位是0还是1.格式见下面图示.如果读取响应信号为高电平,则DHT11没有响应,请检查线路是否连接正常.当最后一bit数据传送完毕后,DHT11拉低总线50us,随后总线由上拉电阻拉高进入空闲状态。
(2)数字0信号表示方法如图2-5所示
(3)数字1信号表示方法.如图2-6所示
图2-6 DHT11数字1表示方法
2.1.4程序讲解
无线模块平常控制NRF24L01处于低功耗模式,通过定时中断每隔5秒采集一次温湿度数据,把NRF24L01模块转换为发送模式,把温湿度数据发送到智能网关。
图2-7 中断处理函数
图2-8 温度采集主函数
2.2 光敏传感器数据采集
图2-10 光敏传感器无线模块
2.2.1 产品介绍
光敏传感器实质是一个光敏电阻,其阻值会随光线强度的变化而发生变化,并且当光照强烈时,阻值变小;光照减弱时,阻值增大;完全遮挡光线时,阻值最大。简单的说,光线传感器就是利用光敏电阻受光线强度影响而阻值发生变化的原理向微控制器发送光线强度的模拟信号。通过LM393比较器可以将产生的模拟信号转换为0、1数字量信号。光敏传感器一般用于光的测量、光的控制和光电转换(将光的变化转换为电的变化)。
2.2.2 技术规格
输入电压:3.3~5V
驱动能力:15mA
输出形式 :数字开关量输出(0和1)、模拟量输出
2.2.3 工作原理
图2-11 光敏传感器接口
光敏电阻模块对环境光线最敏感,一般用来检测周围环境的光线的亮度。模块在环境光线亮度达不到设定阈值时,DO(PD2)端输出低电平,当外界环境光线亮度超过设定阈值时, DO(PD2)端输出高电平。DO(PD2)输出端可以与单片机直接相连,通过单片机来检测高低电平,由此来检测环境的光线亮度改变。另外AO(ADC7)端可以与单片机的模拟量采集引脚相连,通过单片机采集光线亮度的连续变化。
2.2.4 程序讲解
当光敏传感器模块产生检测信号后,PD2引脚的输出电平会有低电平变到高电平。无线模块通过检测上升沿,产生外部中断。在外部中断函数里把NRF24L01模块转换为发射模式,并通过NRF24L01模块把产生的数据发送到智能网关。
图2-12 中断处理函数
2.3 人体热释电传感器数据采集
图2-13 人体热释电传感器无线模块
2.3.1 产品介绍
红外热释电运动传感器能检测运动的人或动物身上发出的红外线,输出开关信号,可以应用于各种需要检测运动人体的场合。传统的热释电红外传感器需要人体热释电红外探头、专用芯片和复杂的外围电路来实现,体积略大,电路复杂,可靠性略低。我们新推出的这款红外热释电运动传感器,专为物联网设计,采用数字一体化集成人体热释电红外探头,具有体积小、可靠性高、功耗低、外围电路简单等特点。
2.3.2 技术规格
输入电压:2.7~3.3V,最大3.6V
工作电流:15uA
输出电压:高电平3V,低电平0V
输出延迟时间(高电平):2.3~3秒左右
感应角度:100°
感应距离:7米
输出指示灯:高电平点亮
输出引脚极限电流:100mA
2.3.3工作原理
图2-14 红外热释电传感器接口
当红外热释电运动传感器在检测范围内检测到运动的生命体时,在输出引脚会输出高电平,电压为3V,同时输出指示灯点亮,当检测到红外热释电信号消失时,延迟2.3~3秒后,输出低电平,电压为0V,输出指示灯熄灭。因此我们可以根据这个特点来快速的建立一个运动人体检测的应用。
2.3.4 程序讲解
当热释电模块产生检测信号后,PD2引脚的输出电平会有0V变到3V。无线模块通过检测上升沿,产生外部中断。在外部中断函数里把NRF24L01模块转换为发射模式,并通过NRF24L01模块把产生的数据发送到智能网关。
图2-15 中断处理函数
2.4 触摸传感器数据采集
图2-16 触摸传感器无线模块
2.4.1 产品介绍
这是一个基于电容感应的触摸开关模块。人体或金属在传感器金属面上的直接触碰会被感应到。除了与金属面的直接触摸,隔着一定厚度的塑料、玻璃等材料的接触也可以被感应到,感应灵敏度随接触面的大小和覆盖材料的厚度有关。
2.4.2 技术规格
类型:数字信号
供电:3.3-5VDC
2.4.3 工作原理
图2-17 触摸传感器接口
常态下,模块输出低电平,模式为低功耗模式;当用手指触摸相应位置时,模块会输出高电平,同时输出指示灯点亮,模式切换为快速模式;当没有触摸时,模块输出低电平,输出指示灯熄灭,模式又切换为低功耗模式。因此我们可以根据这个特点来快速的建立一个触摸按键的应用。
2.4.4 程序讲解
当触摸传感器模块产生检测信号后,PD2引脚的输出电平会有低电平变到高电平。无线模块通过检测上升沿,产生外部中断。在外部中断函数里把NRF24L01模块转换为发射模式,并通过NRF24L01模块把产生的数据发送到智能网关。
图2-18 中断处理函数
3 典型案例---人体红外热释电传感器报警信号远程采集
利用"易监控"提供的软件客户端、无线节点及智能联网硬件,能够完成各种类型的远程数据监测,如:触摸开关监测、温湿度监测、人体红外热释电监测、光敏开关监测等。下面以人体红外热释电远程检测为例讲解一下远程检测的详细实现流程。
图3-1 人体红外热释电传感器报警信号远程采集流程示意图
3.1 账号注册(如果已经注册,可跳过此步骤)
注册"易监控"账号,目前仅支持通过微信注册,详细步骤见http://www.eeecontrol.com/help/register.php。
3.2 添加传感器
在易监控官方网站(http://www.eeecontrol.com/admin-sensor.php)添加一个传感器,详细步骤见http://www.eeecontrol.com/help/sensor.php。
为了演示本功能,您的设置可以参考下图:
图3-2 参数设置图
按照上述步骤操作完成后,我们就添加了一个传感器,页面显示见下图,传感器的信息如下:
名称:热释电传感器
KEY:0101
图3-3 添加的第一个传感器
3.3 阈值设置
当发送传感器的值不在其阈值范围内时,"易监控"会根据您的报警设置情况进行相关报警。因此我们要设置热释电传感器的阈值,当采集到热释电信号时,能够产生报警信息。
在第四步中,当产生报警信息时,智能网关发送到易监控的内容为
DATA:0101+1
发送的传感器数值为1,为了让其超出其阈值,让易监控服务器发出报警信息,我们可以设置他的阈值为(-1,0.5)。报警阈值通过网页客户端的传感数据页面(www.eeecontrol.com/admin-sensor.php)设置,设置阈值的方法见http://www.eeecontrol.com/help/set.php。
图3-4 阈值设置步骤1
图3-5 阈值设置步骤2
3.4 报警信息设置
整个系统共有四种报警方式,语音报警、电话报警、短信报警和邮件报警。其详细工作原理及设置方式详见"《物联网图文教程从入门到精通》初级入门篇05----多类型报警"
3.5 联网硬件设置
注:如果没有联网硬件跳过此步,用模拟器代替,见3.6节
3.3.1 无线节点模块设置及程序烧写
①硬件设置
插接人体红外热释电传感器,插接方法详见"物联网教程资料\教程\②无线节点模块说明书\①《无线节点模块硬件说明书》"的第3.4节。
②程序下载
源程序详细位置:"物联网教程资料\硬件源程序\③无线节点模块程序\②RSD"。程序烧写步骤详见:"物联网教程资料\教程\②无线节点模块说明书\③《无线节点模块程序烧写说明书》"。
3.3.2 智能网关设置及程序烧写
源程序详细位置:"物联网教程资料\硬件源程序\②易监控总程序"。开发板硬件设置、程序修改及下载详见"物联网教程资料\教程\①智能网关说明书\①《智能网关硬件说明书》"的第3.1节"物联网展示系统搭建步骤"。
3.3.3 系统运行,观察实验现象
在热释电传感器前方走动,产生人体热释电报警信息。
3.6 硬件模拟器设置
注:如果有联网硬件,跳过此步。
如果您没有联网硬件,为了让您快速实现远程检测,易监控为您提供了一款"易监控硬件模拟器"软件。可以安装到您的电脑上,用于模拟联网硬件,"模拟器"操作步骤见下图。软件下载地址见: www.eeecontrol.com/admin-download.php。
图3-6 易监控硬件模拟器操作示意图
3.7 传感器信息查看
采集的热释电传感器信息可以通过3种方式查看,分别是网页WEB、手机APP客户端和PC软件客户端。
①通过网页方式查看传感器信息
在网页客户端的传感数据页面(www.eeecontrol.com/admin-sensor.php)查看采集的传感器信息。
图3-7 易监控网页客户端查看传感器数据操作示意图
②通过手机APP客户端方式查看传感器信息
图3-8 易监控APP客户端查看传感器数据操作示意图
③通过PC软件客户端方式查看传感器信息
图3-9 易监控PC客户端查看传感器数据操作示意图
④通过微信客户端方式查看传感器信息
微信客户端操作如下:
向微信公众号"易监控"发送获取数据命令,即可获得最新传感数据,获取数据命令格式如下:
获取数据:传感器KEY
注:上面所有命令格式中的":",均在英文格式下输入
图3-10 易监控微信客户端查看传感器数据操作示意图
3.8 报警记录查看
报警记录查看详见"《物联网图文教程从入门到精通》初级入门篇05----多类型报警"。
特别推荐:推荐给你一本必须人手一本的《电子工程师参考手册》,扫描下面的二维码关注微信公众号(易监控),回复“获取资料”自动下载领取。
已有 0 位网友参与,快来吐槽:
发表评论