1、基于的温湿度上位机监测系统设计毕业设计252020年4月19日文档仅供参考,不当之处,请联系改正。基于ZigBee技术的温湿度远程监测系统设计 学生:陈园(指导老师:吴琰)(淮南师范学院电子工程学院)摘 要: 针对当前温室大棚农作物大面积种植,迫切需要科学的方法进行智能远程监测的研究现状,设计出一套温湿度远程监测系统。该系统是有多个采集终端和一个协调控制器组成。多个终端分别放置不同的大棚内进行实时采集数据,协调控制器的作用就是将多个采集终端经过无线传输过来的的数据进行分析并和PC机连接。PC机上运行上位机软件实时的监测各大棚的温湿度信息。多个终端和协调控制器均采用TI公司新一代CC2530芯片
2、;温湿度传感器采用市场上比较流行的DHT11;无线传输采用ZigBee协议;上位机软件采用labVIEW编写,并经过RS-232与协调控制器连接通信。经过实物测试了ZigBee无线传输的稳定可靠性,丢包率在误差范围内。温湿度采集有0.5s延时时间,满足实时性要求。关键词: 终端;协调控制器;DHT11;CC2530;ZigBee;上位机 Design of Remote Monitoring System for Temperature and Humidity based on ZigBee TechnologyStudent: Chen Yuan(Faculty Adviser:Wu Ya
3、n)(college of electronic engineering, Huainan Normal University)Abstract: According to the current situation of the research on the intelligent remote monitoring of greenhouse crops, the research status of intelligent remote monitoring is urgently needed, and a set of remote monitoring system for te
4、mperature and humidity is designed. The system is composed of a plurality of acquisition terminals and a coordinated controller. Multiple terminals are placed in different greenhouses for real-time collection of data, the role of the coordination controller is to collect more than one collection ter
5、minal through wireless data transmission over the data analysis and PC machine connection. Temperature and humidity information operation software of PC real-time monitoring of the greenhouse on PC. A plurality of terminals and a coordinated controller are used in a new generation of CC2530 chip of
6、TI company; temperature and humidity sensor used on the market more popular DHT11; wireless transmission based on ZigBee protocol; PC software using LabVIEW, and connected with the communication through the RS-232 and coordination controller. The reliability of ZigBee wireless transmission stability
7、 test through the physical, the packet loss rate is in the range of error. Temperature and humidity acquisition 0.5s time delay, meet the real-time requirements.Keywords: Terminal; coordination controller; DHT11;CC2530; ZigBee; host computer1. 绪论1.1 设计背景和研究意义现如今中国已经成为世界第一粮食生产大国,据有关统计说明,中国农作物设施栽培面积已经
8、超过210万hm2。提高农作物的生产效率已经成为提升中国在国际社会中发展速度的重要的因素之一。结合中国的气候环境来说,普通的传统式耕作方式受到了限制,在某个季节只能收获特定的农作物,而且外界因素的干扰性较大,突然降温或者长时间的干旱都是影响收成的关键因素。温室大棚的出现很好的解决了这一问题,使消费者在任何时候,任何季节都能够吃到新鲜的果蔬。温室大棚的流行,不但仅给消费人群带来了便利,也为生产者带来了经济利益。但大面积的种植,如何提高生产效率和更好的监管大棚内作物的生长成了关键问题。温室作物生长的关键问题就是如何控制好温室内的环境温湿度。只有在合适的生长环境下,农作物才能以最佳状态生长,才能提高
9、作物的产率。因此,设计出如何很好的控制和监测大棚内的温湿度环境成为了关键因素。1.2 国内外发展现状如今快节奏的生活方式,使各个大城市生鲜超市的果蔬成为了热销品,而价格却居高不下。这些因素追根溯源都归结与温室大棚的生产效率问题。如何提高温室大棚的生产效率问题,已经成为国内外迫切需要解决的问题。随着市场的千变万化,物联网技术的飞速发展,温室种植规模的不断扩大,对温室生产过程的监测,调控技术的需求量日益增加,不但要管理好作物的生产品种、面积。还要时刻关注市场,使得生产、消费处于良性状态的循环下。过去的“十一五”期间,国内不少研究机构和农业相关单位也研究出了一系列温室监控系统。可是,这些产品过于单一
10、化。只能适应于小范围的。局域性的温室环境。而不能满足于大面积的大棚监控。各个环境间缺少信息的交换。而中国温室大棚恰恰是由温室群为主。不是很完美的解决当前的问题。20世纪70年代,国外温室大棚生产技术以飞快的速度发展。但由于需求和生产面积的限制,温室监控系统也只是适用于小规模的温室,但在那样的环境下,小规模的温室农作物栽培已经能满足于市场的需求,因此局域性的的温湿度监测系统已经达到要求,而考虑到中国的现状,大规模温室群已经成为主流,开发出大规模的温室群温湿度监测系统已经是大势所趋。1.3 论文设计主要内容基于ZigBee技术的远程温湿度监测系统设计主要是针对于中国当前大棚产业的现状而设计,设计的
11、特点是利用ZigBee技术,利用其独特的组建局域网的模式,实现将各个大棚数据汇总到一起,实时动态的监测每个大棚状态,能够减少生产人员的工作量,在没有异常的情况下,人员能够节省时间,提高工作效率。从而达到以最小的付出收获最大的利益,这也是科技是第一生产力的最终目的。论文的第一部分为绪论部分,详细讲述了设计该系统的背景和目的,分别介绍了国内当前温室大棚技术的现状和国外发展的状况,因此设计出一种适应于中国温室大棚的远程监测系统是迫在眉睫的。第二部分是系统设计相关理论知识介绍,分别介绍了ZigBee技术的特点和优势,以及IAR开发环境、labVIEW软件介绍2 系统设计相关知识介绍2.1 ZigBee
12、技术ZigBee是近几年新兴一种的短距离、低速率、稳定可靠的无线网络技术,是无线传感网络(WSN, wireless sensor network)的核心技术之一。是基于IEEE.802.15.4无线标准研发的,关于组网、应用软件和安全的技术标准。ZigBee的特点就是可靠性高、无人工自组网和断网自恢复能力强、多工作频段工作和开发难度相对简单1。ZigBee的起源却很有意思,它的命名主要是人们对蜜蜂采蜜的观察,蜜蜂在采蜜的过程中,会跳着优美的舞蹈并发出“嗡嗡”的声音,其舞蹈的轨迹很像“Z”字形状;蜜蜂个体比较小,可是群体多,单个个体能量小,能携带花粉。因此,我们用ZigBee技术来表示低成本,
13、低功耗,能量小,传输速率低的无线通信技术。在中文翻译中,一般见字面翻译来解释“紫蜂”。在ZigBee技术中,我们学习和开发时,一般都要从层的角度去理解。当然它也是和我们熟知的TCP/IP协议的层结构类似,但由于其本身是简单的,低功耗的,低速率的无线传输协议,因此层的结构相对TCP/IP来说要简单的多。2.1.1 协议层蓝牙、WIFI等其它网络协议一般有7个层,分别为物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。而ZigBee协议层相对简单,仅为3层,分别为PHY层、MAC层以及应用层。PHY提供两种两种类型的服务:即经过实体接口(PLMN)对PHY层数据和管理提供服务,PHY层数
14、据服务可经过无线物理信道接受和发送物理层协议数据单元(PPDU)来实现2。PHY层主要作用是负责无线数据的收发、数据能量的检测、信道的选择、清除信道选择(CCA)、及经过物理媒体对数据包进行收发2。MAC主要的作用就是信道的管理、信道接入、时隙管理、发送确认帧、发送状态连接和断开状态的请求。还提供一些合适的安全机制2。MAC层应用框架层物理PHY层网络安全层IEEE 802.15.4ZigBee协议图1 ZigBee协议层示意图2.1.2 网络拓扑结构ZigBee技术根据相关的应用有三种拓扑结构分别为:星形拓扑结构、树形和网状拓扑结构。如图2所示。路由器协调器终端星形结构网状结构树状结构图2
15、ZigBee网络拓扑结构图星形结构是由一个协调器、多个路由器和终端组成,协调器能同时和路由器和终端组成网络通信。其中路由器和终端不能直接通信,必须经过协调器进行转换操作,才能实现数据的交换。网状结构与星形结构不同的是,它各路由器之间也能相互通信,各路由器又能和协调器进行数据的交换,路由器分别把终端采集的数据经过路由器的转换、通信反馈给协调器。树状结构特点更明确,类似于等级似的数据交换,一个路由器只负责自己旗下的几个终端节点,不与其它路由器通信,只与协调器进行数据交换。然后协调器要控制终端也必须经过她们的各自所归属的路由器。2.2 硬件芯片介绍2.2.1 CC2530芯片CC2530是德州仪器(
16、 TI )公司专为适应物联网大潮而设计的一款专用于IEEE 802.15.4无线局域网协议的专用片上系统芯片(SOC)。能以非常低的功耗和成本建立强大的无线个人局域网节点。与其它众多嵌入式芯片不同的是,它集成了业界领先的RF收发器,当开发者使用就无需再进行额外的无线模块外围电路的设计。大大减小了硬件开发者难度开发者。CC2530采用工业增强型的8051内核,内部系统带有可编程的FLASH存储器,8K的RAM和其它MCU资源。CC2530有四种不同的型号:CC2530F32/64/128/256,主要是根据Flash大小区分:32/64/128/256KB的Flash存储器。当前广泛应用于物联网
17、、智能家居行业。图3 CC2530芯片引脚图2.2.2 DHT11温湿度传感器DHT11是一款价格低廉的、内部含有已校准数字信号输出的温湿度传感器,是市场上非常常见的复合数字传感器。由于其价格低廉,开发使用方便,因此广泛使用于汽车、测试及检测装备、除湿器、温湿度调节器等场合。其内部还有电阻式感湿元件、NTC测阻元件、OPT以及MCU控制电路模块;将这些部件封装在一起,实现温湿度数据的采集处理;经过单总线的方式输出。湿度测量范围:20%90% 湿度精度:5%RH 温度精度:2 分辨率:1 封装:4针单列直插图4 DHT11实物图表1 DHT11引脚功能说明PIN名称注释1VCC供电3-5.5DC
18、2DATA单总线,串行数据3NC空脚,请悬空4GND接地,电源负极2.3 开发环境介绍2.3.1 IAR开发环境IAR是当前嵌入式开发工具中非常流行的一款开发软件,它集成C/C+编译器、调试器于一体的优势获得了众多嵌入式开发工程师的青睐。它是全球领先的的嵌入式开发工具和服务的供应商IAR Systems所提供,支持当前全球众多知名半导体公司的微处理器。全球众多著名的半导体公司也在使用IAR公司的产品。开发的嵌入式产品主要应用于消费电子、航空航天、工业控制、汽车电子、医疗电子等众多领域。IAR公司根据市场上不同的微处理器芯片的内核,提供了不同的版本。我们这里用到的是IAR Embedded wo
19、rkbench IDE for Intel MCS-8051 这种版本的IAR开发环境主要是为8051内核的微处理器。其软件界面如图5。图5 IAR开发环境界面2.3.1 labVIEW 开发环境labVIEW是美国国家仪器( NI )公司推出的的一款程序开发开发环境,该公司还有一款非常经典电路仿真软件Multisim,也受到了广大电子工程师的喜爱。LabVIEW也是类似于C、BASIC等程序开发环境类似,但她不同的于其它计算机开发语言的是它抛弃了传统的文本式的语言编辑,取而代之的是图形化的编程语言进行开发,也就是人们所说的G语言,G语言最大的优势就是简单、简洁明了。这种程序开发语言对程序员的
20、语法知识要求不是很高,因此对于非计算机类专业的人员,用到界面开发的话,labVIEWS是最好的选择。该软件的特点就是提供了非常齐全的程序控件,开发者不用关心底层是如何实现的,软件本身就提供了各类接口控件,不论是是底层嵌入式的开发,还是上层应用的开发,labVIEW都能够满足设计者的要求。labVIEW软件界面如图6所示。图6 labVIEW 软件界面3 系统硬件电路设计3.1 电源电路CC2530及外围传感器工作电压为3.3V的工作电压,因此在电源电路设计的时候将直流输入的5V电压转换成3.3V,如图7所示。图7中,电压变换采用了LM1117电压转换芯片,该芯片的目的就是将输入的5V电压转换成
21、微处理器需要的3.3V。其中DCIN为直流5V输入接口,经过F1的保险丝和开关进入LM1117的3号管脚,经芯片转换过后,2号引脚输出3.3V电压。其中在2号管脚和3号引脚都会有电解电容、普通瓷片电容接地;瓷片电容的目的是滤除高频杂波。在转换正常的情况下,二极管LED指示灯会接通,并发光。图7 电源电路3.2 通信电路在本设计中,涉及到下位机和PC上位机通信的过程。通信方式有USB通信、RS-232通信,这里我们选择开发难度相对简单的RS-232通信协议,也就是串口通信。可是当前市场上笔记本电脑基本都取消了串口接口,因此需要将USB信号转换成串口信号。图8为USB转串口的转换电路。图8 PL2
22、303驱动电路3.3 传感器电路本设计采用温度、湿度两用的传感器DHT11,DHT11采用单总线的数据读取和写入模式,操作简单,程序代码编写也较为容易。借鉴官方数据手册提供的驱动电路,如图9所示。图9 DHT11采集电路传感器1号引脚接电源VCC端;3号引脚接GND端,为传感器提供正常的工作电压,2号引脚为数据端口,其中该端口在使用时需要将其接上10K的上拉电阻,目的是为了能使读取和写入数据的稳定性,单片机输出的高电平在传输过程中会受到外界或者导线的影响,到达数据口的时候可能会发生变化,因此这里需要接上上拉电阻保持其信号的稳定性。3.4 主控电路CC2530的工作正常工作电压3.3V,因为该芯
23、片内部自带AD转换芯片,因此这里会有模拟电压和数字电压的区别,如图10所示。芯片引脚中标有DVDD的均为数字电源正,标有AVDD的均为模拟电源正。32、33、22、23引脚都接上了晶振,但不同的是:22、23接的是32M的晶振,为系统提供正常工作提供基准时序。32、33引脚接上的晶振为32.768K,其作用就是为系统时间提供基准时序,开发者能够采用这个时序基准开发RTC实时时钟;另外,当单片机处于休眠状态时,该晶振还能够继续提供实时时钟的时序。.图10 CC2530系统电路4 系统软件设计4.1 系统整体框架根据设计要求,构思出系统整体框架。温湿度传感器采集数据;采集节点进行数据的处理,并经过
24、无线传输给协调器;协调器经过点对点的通讯方式和各个节点联系,并实时的接受各节点的数据。协调器与PC机通信,把各节点的信息发送PC端。这里由于实际情况的限制,不可能采取N多个节点;因此设计采用2个节点为例。传感器传感器协调器节点2节点1PC机图11 系统结构框架4.2 下位机程序设计任何的程序代码编写都要事先进行程序流程图的设计,本设计的下位机程序设计是根据Z-Stack协议栈规范的,因此在程序设计时,与以往的裸板开发不一样,在理解Z-Stack协议栈的APP层的同时,加入自己的逻辑设计、应用程序部分。程序流程图如图12所示。报文发送开始DHT11初始化初始化成功?数据处理NY提取数据串口发送开
25、始建立连接?接收报文NY图12 节点发送、协调器接收程序流程图在节点程序设计时,首先要对DHT11驱动的子程序编写,测试并经过;然后移植到协议栈的程序代码中调试。能在协议栈中也能实现温湿度采集,并实现数据的发送程序编写。在协调器程序设计时,首要问题就是报文的提取。在Z-Stack协议栈中,接收到的报文并不是单独的数据,因此必然要将需要的数据包提取出来,然后解析数据并编写协议栈环境下的串口发送程序。具体程序代码见附录。4.3 上位机程序设计协调器和节点都是基于C语言开发的,而上位机的界面开发则是根据labVIEW软件的特点,采用图形化的G语言开发,程序流程图如图13所示。开始串口连接?YN点击采
26、集按钮?YN接受数据解析数据节点1节点2退出?退出软件图13 上位机程序流程图根据设计的程序流程图,在labVIEW 程序面板中编写相应的代码。其代码如图14所示。图14 labVIEW程序面板程序面板中,所有执行代码都是在一个大的循环下执行的,要让软持续运行,大循环的条件必须为真;条件为真时系统时间控件会显示当前时间延时控件也会工作。控制循环的是布尔变量的按键,能够选择条件的真假实现程序的终止。大循环内有一个VISA串口配置控件,将波特率设为115200bps、设置奇偶校验位0、终止位0。接着就是另一个内嵌小循环;在这个小循环里,串口缓存区的数据在这里经过数组、字符的一些操作将数据分离出来,
27、分别对应1号节点和2号节点。解析的数据将会在前面板显示出来,因此前面板的设计也要合理美观,前面板如图15所示。图15 labVIEW前面板5 系统调试及结果分析5.1 程序调试、下载经过系统流程的设计、代码的编写、移植、修改、调试,将协调器程序代码编译后经过JTAG下载的方式下载到CC2530芯片的Flash中;接通电源后,此时的协调器具有组建网络的能力。接下来把程序切换到终端模式,对程序进行编译、下载。同上电后,终端节点会自动查找协调器,自行搜索是否有对应的协调器的存在;若搜索到协调器的存在会主动建立网络连接。程序编写好后,点击编译按钮,如图16所示。图16 程序调试编译界面编译经过后,经过
28、JTAG将CC2530的下载口与PC机相连,协调器程序下载需在左上角的工程选项复选框选择CoordinatorEB-Pro方式,点击下载;下载终端节点的程序需要更改左上角工程选项复选框选择EndDeviceEB-Pro方式,点击下载。下载界面结果如图17所示。图17 JTAG程序下载界面5.2 运行结果及分析5.2.1 运行结果将程序代码编译下载到芯片内,分别给协调器和终端供电;协调器的组网指示灯会闪烁,等到有终端节点加入其网络的时候,指示灯就会稳定的指示。终端节点的网络指示灯也会一直指示网络连接状态。在终端节点的设备上,DHT11温湿度传感器的电源指示灯也会亮起,说明DHT11处于正常工作状
29、态。协调器(左下)、终端节点(左上、右上)组网状态的实物设备如图18所示。图18 协调器、终端组网状态图协调器和PC连接时,检查串行端口是否连接,查看 我的电脑设备管理端口是否有端口存在,若出现无法识别USB设备,需要安装USB转串口的驱动,这里的驱动芯片为PL2303。安装驱动后会出现COM口,再打开上位机软件,选择刚才识别的COM口,并点击 开始 按钮,连接状态指示灯会由红色变为绿色,说明连接成功。此时上位机界面上会有下位机发送的数据。如图19所示,此时协调器只与一个节点组网,另一个节点未供电。此时上位机界面就出现一个节点的数据;数据会每500ms更新一次,若用手握住DHT11或对其吹口气
30、,此时上位机界面的数据会发生变化,表格温湿度的波形会慢慢的上升。图19 单个节点上位机界面当一个节点正常工作的时候,另一个节点突然通上点,另一个节点的数据界面也会及时的更新,在更新的同时不会影响另外一个节点,两个节点的工作状态是相互独立的,也不会相互影响。如图20所示,界面的上半部分实时显示1号节点的温湿度信息,下半部分显示2号节点的信息。在波形表格的左侧是一个温度指示计,它的左上角有个数字显示框;直观的反映动态变化的同时,又能时刻显示其数字大小的变化。右边蓝色液压界面是湿度指示。其右上角也有个数字框,也是为了能更清晰的反映数字变化。在整个界面的会实时显示当前的时间。图20 两个节点上位机界面
31、5.1.2 结果分析经过多次连接、组网、通信,数据基本都能稳定的上传,上位机也能很快的识别而且稳定的显示其上传结果。当将终端节点设备拿到很远的地方;而且有很多建筑物阻挡的地方时,数据通信会不稳定甚至出现断网的情况。若供电不稳定或者终端节点和协调器上电过于频繁,也会出现数据的突变为0的情况,但持续时间很短,为一个数据更新周期。下一个更新周期的开始就会回复正常显示状态。理论上来说,根据天线的发射功率,能达到2km的通信距离,当然是在无障碍物的前提下,解决这样的问题需要增大天线的发射功率,更换更好的接收天线。但由于经济因素和时间情况不允许,因此这样问题在以后进行改进。另外虽然数据突变情况出现次数很少,可是也反映出一个问题,需要解决这样的问题,需要对数据进行滤波处理,这里的滤波采用数字滤波,能够采用平滑滤波算法,平均值滤波算法等,但由于本人当前知识能力有限,对这些算法知识了解不够。在以后的学习中会花更多的时间解决这样的问题。