远程大气环境数据采集系统的设计

2018-11-14 12:58袁秋凤
赤峰学院学报·自然科学版 2018年10期
关键词:下位灰尘字节

袁秋凤

(宁德师范学院 信息与机电工程学院,福建 宁德 352100)

由于能源消耗结构的不合理,机动车尾气排放和城市扩张性建筑扬尘等[1],造成我国大部分城市近几年来雾霾天气持续出现,大气环境这一直接影响身体健康的外部因素也日益受到人们的重视.本文设计了一个远程数据采集系统,可以实现温湿度、光照强度和灰尘浓度这些重要大气环境参数的连续采集和实时传输,既能作为大气环境数据实时监测的一种手段,也能为人们的生产生活以及污染防治提供预警信息.

1 系统设计方案

远程大气环境数据采集系统由上、下位机组成,如图1所示.下位机负责远程大气环境数据的采集、显示和传输,由主控制器、传感器电路、显示电路、WiFi通信接口电路和电源电路组成;上位机负责采集数据的显示、分析和存储,由计算机和监测软件组成.上下位机之间的无线通信链路依托于3G网络、Internet和WiFi局域网.

图1 系统组成框图

2 下位机硬件设计

下位机主要由主控电路、传感器电路、液晶显示电路和WiFi通信接口电路组成,如图2所示.

主控制器采用8位高性能单片机stc12c5a60s2,它不仅工作速度快、功耗低、抗干扰能力强,还自带大容量的RAM和ROM、串口、定时器、ADC、PWM等片内硬件资源,将复杂外围电路内装化,极大地简化了单片机系统的电路设计.图2中的单片机最小系统电路,主要由内部时钟电路、手动复位电路组成.

传感器电路在单片机的控制下,实现环境中温湿度、光照强度和灰尘浓度的采集.温湿度传感器采用单总线结构已校准数字信号输出的dht11,其体积小、功耗低、响应快、可靠性高,可以应用到苛刻的环境中[2].图2中P3的引脚2为串行数据输出线.光强传感器采用TMB封装、I2C接口(或SMBus接口)、16位数字量输出的TSL2561,它速度快、功耗低、量程宽,通过对其内部的16个寄存器和1个命令寄存器的编程和内容读取,能够设置不同的控制功能和获取不同精度的AD转换结果.本设计利用单片机的P2.2和P2.3引脚软件模拟I2C的时钟线和数据线实现数据的传输.图2中P5的引脚1接3.3V直流电源,引脚2决定器件访问地址,该引脚悬空表示TSL2561的地址为0111001.灰尘浓度检测传感器采用内部集成MCU的GP2Y1051AU0F,它利用微小颗粒物对光的散射和光敏原理,可实现直径为10μm以下的颗粒(PM10)的检测,电路接线简单,仅需GND、VCC和TXD三根引脚接线即可工作,其中TXD引脚每10ms发送一次灰尘浓度脉冲信号.

图2 下位机硬件电路

显示电路使用点阵液晶模块LCD12864,分四行分别显示湿度、温度、灰尘浓度和光照强度.

通信接口电路采用集成MCU的串口转WiFi模块ESP8266,该WiFi模块支持AT和IOT两种开发模式,允许用户自己编写ROM进行二次开发,可设置STATION、AP、AP+STATION三种工作模式,具有价格低、体积小、功耗低等优点,是一款在物联网领域应用广泛的WiFi模块.图2中ESP8266的引脚 8(TX)、4(RX)和单片机的 TXD、RXD 引脚交叉连接,引脚VCC接3.3V直流电源.

3 软件设计

系统软件包括下位机单片机控制程序和上位机计算机监测软件两部分,分别采用C51和LabVIEW编程.

3.1 下位机软件设计

下位机程序执行流程如图3所示,系统初始化分别完成串口1、串口2、T0、T1和液晶的初始化操作,其中串口1用于实现采集数据的WiFi透传,波特率为9600b/s,串口2用于传输灰尘浓度,波特率固定为2400b/s,T0用于定时30s,串口1采用T1作为波特率发生器,串口2采用独立波特率发生器.

图3 下位机程序流程图

本设计采用WiFi透传模式实现远程现场和监测中心两个局域网间的数据传输.监测中心的计算机应有固定公网IP或设置内网穿透功能,在远程现场通过手机创建WiFi热点作为无线路由器(也可将无线联网计算机作为WiFi热点),ESP8266连接至该WiFi热点,通过TCP方式发送数据给监测中心的计算机.使用到的AT指令及功能如表1所示:

表1 AT指令及功能说明

dth11温湿度传感器输出的数据为5字节,按照先后顺序分别是湿度整数、湿度小数、温度整数、温度小数和校验和,各占1字节,数据位0或1都是以50μs低电平开始,后续高电平为26~28μs表示数据位0,后续高电平为70μs表示数据位1.

GP2Y1051AU0F的TXD引脚发送的数据帧为7字节,包括起始字节(0xaa)、输出电压高低字节(VoutH、VoutL)、参考电压高低字节(VrefH、VrefL)、校验字节和结束字节(0xff),其中校验字节=VoutH+VoutL+VrefH+VrefL.灰尘浓度Ud与输出电压之间满足关系:Ud=K×(VoutH×256+VoutL)×2.5/1024,其中浓度系数K的取值可根据输出电压的范围做调整.

TSL2561初始为掉电状态,通过给内部控制寄存器写命令03H使其上电,同时内部的两个ADC通道ch0和ch1启动默认为400ms的积分转换过程,转换结果分别保存在DATA0和DATA1的两个16位数据寄存器中.采用I2C总线协议对TSL2561进行读操作,如图4所示,对TSL2561的一次读操作仅读取一个字节数据.

图4 I2C协议读字节操作流程

根据表达式Channe10=256×Data0High+Data0Low可分别计算出两个通道的AD转换值.再按照以下公式,可计算出光照强度值Lux(单位流明).

3.2 上位机软件设计

上位机监测软件在NI公司的图形化编程环境Lab-VIEW中开发,LabVIEW目前已更新至2018版,利用Lab-VIEW多样化的工具包设计出的人机界面,可以实现工业自动化、测试测量、嵌入式应用、运动控制、图像处理、计算机仿真、FPGA等不同技术领域的应用需求[3].上位机软件采用生产者——消费者程序设计模式,基于TCP通信协议,用两个队列分别存放事件类型和采集数据,以波形图表和数值显示控件两种方式同时显示实时监测值,用电子表格方式存储数据,便于后续对数据进行分析处理.用户界面如图5所示,图中为实验室环境下的监测数据.

图5 上位机用户界面

4 总结

本文设计的大气环境数据采集系统采用WiFi技术,能通过共享3G网络数据流量,与Internet无缝连接,实现远程数据的自动连续传输,系统具有结构简单、工作稳定、传输距离广等优点,不仅适用于远程野外的大气环境监测,也同样适用于室内空气质量监测.用户还可以对系统软硬件进行扩展,实现对臭氧、二氧化硫等其他大气环境参数的监测.

猜你喜欢
下位灰尘字节
你真的认识灰尘吗?
灰尘快到桶里来
No.8 字节跳动将推出独立出口电商APP
灰尘在繁衍
No.10 “字节跳动手机”要来了?
发射机房监控系统之下位机
简谈MC7字节码
景洪电厂监控系统下位机数据传输网络改造
围观党“下位”,吐槽帝“登基”