[信息与通信]基于zigbee技术的蔬菜大棚管理系统设计

[信息与通信]基于zigbee技术的蔬菜大棚管理系统设计

ID:12542772

大小:3.35 MB

页数:45页

时间:2018-07-17

上传者:xinshengwencai
[信息与通信]基于zigbee技术的蔬菜大棚管理系统设计_第1页
[信息与通信]基于zigbee技术的蔬菜大棚管理系统设计_第2页
[信息与通信]基于zigbee技术的蔬菜大棚管理系统设计_第3页
[信息与通信]基于zigbee技术的蔬菜大棚管理系统设计_第4页
[信息与通信]基于zigbee技术的蔬菜大棚管理系统设计_第5页
资源描述:

《[信息与通信]基于zigbee技术的蔬菜大棚管理系统设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

基于Zigbee技术的蔬菜大棚管理系统设计摘要:随着计算机技术、无线通信技术以及农业设施的不断完善,蔬菜大棚也慢慢向着无线、经济、智能化的方向发展。而温湿度是蔬菜大棚环境监控的一项重要指标,从早期的人工管理、自动控制,以及到现在要求的智能化,温湿度的监控越来越安全、经济、高效、便捷。本文以增强型工业标准的8051内核CC2430为硬件平台、IEEE802.15.4为协议标准以及和数据库等的软件结合,设计了一个基于Zigbee网络的远程蔬菜大棚温湿度的监控系统。该系统运行可靠、功耗低、成本低达到了我们对蔬菜大棚温湿度的远程实时监控。为提高农作物的生产量、为农民增收带来了很好的经济和社会效益。关键词:Zigbee;实时监控;无线通信;数据库;智能化 ManagingSystemofGreenhousesBasedonZigbeeHuangXiongfengSanmingUniversityCollegeofMathematicsandInformationEngineeringGrade2008ComputerScienceandTechnology(Orientation:EmbeddedTechnology)Abstract:Withthecontinuousperfectionofcomputertechnology,wirelesscommunicationtechnologyandagriculturalfacilities,thetechnologyofgreenhousesisalsodevelopinginthedirectionofwireless-ness,economyandintelligentization.Humitureisanimportantindicatorinmonitoringtheenvironmentofgreenhouses.Withtheearlylaborcontrol,automaticmanagementandthepresentrequiredintelligentization,themonitoringofhumitureisbecomingmoreandmoresafe,economical,efficientandconvenient.Withenhancedindustry-standard8051kernelCC2430ashardwareplatform,IEEE802.15.4asprotocolstandardsandsoftwarescombinedwithdatabase,thepaperdesignsaremotemonitoringsystemofgreenhousesbasedonZigbee.Thesystemisdependableandhelpstoachievereal-timeremotemonitoringofthehumitureofgreenhouseswithitslowpowerconsumptionandcost.Itcanincreasetheproductionofcropsandthusbringgreateconomicandsocialbenefitstofarmers.Keywords:Zigbee;real-timeremotemonitoring;wirelesscommunication;database;intelligentization 目录第一章绪论11.1本文研究的背景和意义11.2相关领域国内外的研究现状21.3本人主要工作31.4本文组织结构3第二章系统结构框架分析和设计42.1无线蔬菜大棚模型结构分析42.2系统整体框架设计6第三章系统开发环境和软硬件选型83.1系统开发环境83.2系统软硬件选型8第四章系统软硬件的设计和实现144.1数据采集节点的设计和实现144.1.1温湿度数据采集模块144.1.2无线通信模块164.2基站节点的设计和实现184.2.1IEEE802.15.4标准和Zigbee协议介绍184.2.2基站节点实现功能描述194.2.3温湿度数据解码224.3节点程序的烧录234.4服务端的设计和实现274.5远程主机端的设计和实现284.5.1主机服务端应用软件设计分析294.5.2主机服务端应用软件部分功能实现30第五章系统运行和验证37第六章结论39参考文献40致谢41 第一章绪论随着人类社会的发展,温室大棚的出现促进了农业发展、带动了农民的增收,给人类的农业发展带来了可观的经济和社会效益。温湿度作为农作物生长的重要因素,便成为了蔬菜大棚智能化控制的主要研究部分。1.1本文研究的背景和意义作为世界四大文明古国之一,我国也是世界上的农业大国。有着悠久的农业种植历史,但国外的温室种植,温室控制管理技术已经相对比较成熟,而我国的农业设施、控制技术、管理技术等却远远落后于欧美等一些发达国家。随着改革开放,特别是90年代以来,在过去的二十几年里先后从国外引进了许多温室种植技术,以蔬菜大棚、花卉为主的植物栽培设施在大江南北遍地开花,随着政府对城市蔬菜产业的不断投入,乡镇内蔬菜大棚产业被看作是21世纪最具活力的新产业之一。显然引进国外的先进技术是实现我国现代化农业的一条快捷路径,与此同时我们也要发展适合我国环境资源特点的有我们自主知识产权的温室控制技术[1]。我国地大物博,但可耕植的土地却很少,加上人口众多,人均占有耕地面积少。因此,想要提高农业生产值,只靠增加耕地面积是不现实的,所以我们要想办法来提高单位产量。温室大棚技术就是其中一个好的方法。温室大棚是一种可以改变植物生长环境、为植物生长创造最佳条件、避免外界四季变化和恶劣气候对其影响的一个场所。通过建立一个模拟适合生物生长的气候条件,创造一个人工气象环境,来消除生物生长对温湿度等环境的依赖。而且它能使传统的季节性作物不再依赖以季节气候等因素,使得在某个季节里可以长出人类所需的作物。由于温室大棚能达到调节产期,促进生长发育,防治病虫害及提高质量和产量等众多的作用,并且已成为农民增收的主要手段,所以在世界上越来越普及温室大棚技术。随着大棚技术的普及,温室大棚数量不断增多,温室大棚的温湿度控制便成为一个十分重要的课题。自18世纪工业革命以来,工业发展与是否能掌握温湿度有着密切的联系。在冶金、钢铁、石化、水泥、玻璃、医药等行业,可以说几乎80%的工业部门都不得不考虑着温湿度的因素。41 温湿度不但对于工业如此重要,在农业生产中温湿度的监测与控制也有着十分重要的意义。传统的温湿度控制是在温室大棚内部悬挂温度计和湿度计,通过读取温度值和湿度值了解实际温湿度,然后根据现有温湿度与额定温湿度进行比较,看温湿度是否过高或过低,然后进行相应的通风或者洒水。这些操作都是在人工情况下进行的,耗费了大量的人力物力。现在,随着国家经济的快速发展,农业产业规模的不断提高,农产品在大棚中培育的品种越来越多,对于数量较多的大棚,传统的温度控制措施就显现出很大的局限性[2]。温室大棚的建设对温湿度检测与控制技术也提出了越来越高的要求。现在我们生活在一个智能化的世界中,其中单片机等计算机技术是功不可没的一部分。单片机是单片微型计算机的简称,其功能强大、体积小、可靠性高、造价低和开发周期短等优点使其成为自动化和各个测控领域中必不可少且广泛应用的器件,尤其在日常生活中也发挥越来越大的作用。它比专用处理器更适合应用于嵌入式系统,因此它得到了最多的应用。事实上单片机是世界上数量最多的计算机。现代人类生活中所用的几乎每件电子和机械产品中都会集成有单片机。工业控制、尖端武器、通信设备、信息处理、家用电器等各测控领域都有其身影。采用单片机来对农业大棚中的温湿度进行监测、控制等,不仅具有简单方便、控制性强和实时性高等优点,而且可以大幅度提高被控温湿度的技术指标,从而能够大大提高产品的质量和数量,而且单片机对温湿度的控制问题是一个工农业生产中经常会遇到的问题。因此,本课题围绕基于单片机的温室大棚控制系统展开了应用研究工作。1.2相关领域国内外的研究现状国外对温室大棚内的诸多环境进行控制的研究比我国早,大约始于20世纪70年代。最初采用的是人工的现场采集、记录、统计等手段来进行对温室大棚内的环境进行相应的控制等。大概到了80年代末则迅速的采用自动化控制。而这些都离不开人的因素参与在里面,所以目前各个国家在已有的基础上对温室大棚进行了更深入的研究,让温室大棚的管理和计算机、无线网络等实现无人值守等方面发展。从国内外温室控制技术的发展状况来看,温室环境控制技术大致经历三个发展阶段:(1)手动控制。手动控制产生于人类对温室栽培作物的前期,在这个时期,温室大棚内的环境因素都必须有人类来进行观察、测量、记录,从而进行温室大棚内环境的调整,诸如光线、温湿度等。在此基础上产生的经验将记录在文献中,从而成为人类对温室大棚技术研究及其实践的理论依据。在这个时期,由于人的因素是温室环境控制的主导,虽然温室大棚产生的经济效益比传统作物生长产生的经济效益高出了许多,但是其生产效率低下也让人类慢慢的在研究新的控制方法,从而让农业的发展更加向工业化式的生产靠近。(2)自动控制。41 随着人类对手动控制阶段的深入探索,加上工业化程度的渐渐成熟,人类对温湿度大棚的环境监测、控制等又进入另一个阶段:自动化控制。在这个阶段人类根据以往的经验,对温室大棚内作为生长的环境有了深入的了解,以是采用工业控制的手段对大棚内的环境进行调整。拿对大棚内光线强度的控制来举例。大棚管理员先对大棚内作物对光线需求量的上下阀值进行了预先的设置,接着根据大棚内光线传感器传来的数据与上下阀值进行对比,再根据对比的结果来决定是否对大棚内的光线强度进行调整控制等,从而实现了农业大棚的工业化式生产、农业生产效率得到了进一步的提高。我国对国外的温室大棚设备及其控制技术的引入等大多数都是停留在这个阶段。(3)智能化控制。随着计算机科学技术的不断发展,工业控制领域慢慢向着智能化方向发展,温室大棚控制技术也将面临着进一步的改革。到了智能化控制阶段人类根据祖先留下的关于温室大棚控制的文献和经验的传承,进一步总结对温室大棚内环境控制的经验等,从而研究出一种不同作物、不同环境等的控制技术,渐渐的淡化人的因素,从而更大程度的提高生产效率。让温室大棚控制技术逐渐的朝着智能化、无人值守、先进、高收益等方向发展。1.3本人主要工作在对国内外的一些文献的阅读,以及对计算机技术在工业控制领域的研究、传感器技术的了解以及对无线网络技术的研究,利用这些现有的设备和技术,分析和总结出国内外对温室大棚环境控制技术的经验和成败教训等,再从实际的种植、生产情况出发,根据预先设计好的完整流程,用更短的时间、尽量少的资源生产出更优质的作物产物,从而提高了农业生产效率,为人类获得更多达大的经济效益。从系统的整体功能出发,本文将讨论该系统的硬件构成和软件设计,即系统的数据采集节点部分,数据转发部分(基站),服务器端部分以及远程主机部分(提供用户数据查询)。其中数据采集部分和数据转发部分是基于增强型工业标准的8051核单片机处理器构成的;服务器端主要是收集基站发来的数据、存储、并负责将数据传输到远程用户使用端;远程主机部分主要实现从服务端接收温湿度数据,并以此为基础为用户提供丰富软件功能。本系统重点将放在软件设计和实现上。1.4本文组织结构本文总共分6章来讲述关于无线蔬菜大棚的设计和实现。第一章主要陈述了研究本系统的背景和意义、国内国外相关领域的研究现状以及本人在本系统中所作的工作;第二章主要介绍了整个系统的整体框架以及一些必要流程图来帮助理解本系统;第三章主要论述了开发本系统所用到的开发环境、工具等;第四章对本系统的软硬件实现进行了详细的描述;第五章将对本系统运行的结果进行验证;第六章对本系统及本文进行了总结。41 第二章系统结构框架分析和设计2.1无线蔬菜大棚模型结构分析经过对Zigbee无线组网技术的了解、对蔬菜大棚的自动化控制的了解、温湿度采集等环节的了解,再根据预期开始时间、成本、经济效益的方面的考虑,本系统的模型主要分为四块:温湿度的数据采集节点、负责从节点接收数据并向主机发送数据的基站节点、主机(服务器)以及最终的用户。该系统的模型框架如图2-1所示:远程主机端服务端程序基站节点数据采集节点图2-1系统整体模型框架图温湿度采集节点是由CC2430核心板和温湿度传感器构成的。其中CC2430是用来实现Zigbee应用的片上系统,它支持2.4GHZIEEE802.15.4/Zigbee通信协议。该模块集成了增强型工业标准的8051单片机、Flash、SRAM和RF收发器[3]。数据采集节点的工作流程图如图2-2所示:开始N收集温湿度数据系统初始化定时时间到Y发送温湿度数据图2-2数据采集节点工作流程图数据采集节点是定时的(默认设置成10S采集一次温湿度数据)采集数据,41 这个时间间隔是可以网络中的基站向温湿度传感器节点发送重新设置时间间隙的控制命令来完成设置的。PPP(Point-to-PointProtocol)协议是在设计和实现网络中基站节点功能所要用到的技术。PPP协议是为在同等单元之间传输数据包这样的简单链路设计的链路层协议。这种链路提供全双工操作,并按照顺序传递数据包。设计目的主要是用来通过拨号或专线方式建立点对点连接发送数据,使其成为各种主机、网桥和路由器之间简单连接的一种共通的解决方案。传感器应用了其技术从而实现了数据的接力传送,从而提高了网络通信的效率[4]。温湿度采集节点也是基于Zigbee通信协议的终端设。Zigbee的基础是IEEE802.15.4。但IEEE仅处理低级MAC层和物理层协议,因此Zigbee联盟扩展了IEEE,对其网络层协议和API进行了标准化。与其他无线标准802.11或802.16不同,Zigbee以250Kbps的最大传输速率承载有限的数据流量。它满足国际标准组织(ISO)开放系统互连(OSI)参考模型,主要包括物理层、数据链路层[5]。Zigbee是一种新兴的短距离、低速率、低功耗的无线可自组的网络技术。主要用于近距离无线连接。在数千个微小的传感器之间相互协调实现通信,这些传感器只需要很少的能量,以接力的方式通过无线电波将数据从一个传感器传到另一个传感器,所以它们的通信效率非常高。Zigbee是一个最多可容纳65000个无线数值传输模块组成的一个无线网络数据传输的平台。图3-2是Zigbee的协议栈的体系结构图。图2-3Zigbee协议栈体系结构41 Zigbee网络和中国移动通信的CDMA/GSM网络非常的相似,每一个Zigbee无线网络数据传输模块类似于移动网络中的一个基站,在其构成的真整个无线网络范围内,它们之间可以进行相互通信;每个网络节点间的距离可以从标准的75米,到扩展后的几百米,甚至几公里,这样子可以满足通信设备逐渐变大的今天;另外整个Zigbee网络还可以与现有的其它的各种网络连接[6]。2.2系统整体框架设计本系统根据现有的农业设施、计算机软件基础上进行了设计,主要分为传感器数据采集节点部分,数据转发部分(基站),服务器端部分以及远程主机4部分。终端节点既考虑到了功耗的要求,又考虑到了数据的安全性。各个传感器节点每隔一定的时间采集一次它周围的温湿度,并将温湿度数据通过临近节点或直接传给基站核心板上;基站核心板负责收集从各个几点上传来的数据,并通过串口转传到服务器端上;远程主机将建立数据库来存储这些数据,为用户提供查询操作,主机也可以实现报警等功能。本系统的总体框架如图2-4所示。图2-4无线蔬菜大棚系统总体框架图以下是对这4部分功能的详细介绍:1、温湿度传感器数据采集节点:本系统中该环节主要是通过CC2430集成的暴露在空气中的温湿度传感器来采集菜蔬大棚里空气的温湿度,将其转化成数字信号,并通过Zigbee无线网络将这些采集到的数据发送到基站节点。数据采集节点并不是多对一的传输关系,每个节点都有路由转发功能,也可以接受来自邻近节点的数据,并将其转发给基站节点,从而扩大了测量的距离,解决了无线测量范围有限的难题[7]。41 2、基站:基站作为本系统的核心环节,它需要完成收集从自己网内各个数据采集节点发来的数据,并将这些数据通过串口发送到计算机(也可以称作服务器上)进行存储,从而为上层用户提供查询等服务提供了数据依据。基站也是一块CC2430的增强型工业标准的嵌入式核心板,它在组网中的序号必须是01号,否则将接受不到数据,此部分将在下面的章节详解介绍。3、服务器端:服务器端通过串口线将从基站收到的数据存储在数据库中,并通过GPRS网络传输给远程主机端,从而为上层软件的设计、用户的使用提供了数据依据。本系统的一个重点是在服务器端建立一个软件系统来管理这些数据。4、远程用户端:该部分主要负责从服务器端收集数据,并存储在自己的数据库中,并以此为数据基础为用户提供数据。本系统在该软件设计中实现数据接收的控制、温湿度数据的显示、历史数据的查询、删除、温湿度的自报警以及系统用户等的管理。41 第三章系统开发环境和软硬件选型3.1系统开发环境本系统的开发环境可以分为硬件环境和软件环境:(1)硬件环境主要有:1、温湿度数据采集节点:若干个基于CC2430温湿度传感器节点;2、基站节点:基于CC2430的核心板;3、服务器端:SIM300V1.5开发板。4、远程主机:个人PC机。(2)软件环境主要有:1、涉及的开发工具环境:SQLServver2005、MicrosoftVisualStudioC++6.0、Cygwin等;2、涉及的操作系统:TinyOS、MicrosoftWindowsXPProfessional等。3.2系统软硬件选型本系统选用集成了SHTxx系列的CC2430增强型8051内核的芯片作为温湿度数据采集模块和基站模块。图3-1是温湿度采集节点及其基站的实物展示。图3-1温湿度数据采集及其基站节点数据采集节点及其基站节点41 是一组安放在蔬菜大棚实地内的传感器和无线通信模块的终端集合。主要是负责大棚内空气的温湿度的数据采集,并接收从基站发来的指令,定时通过无线模块将本节点采集到的温湿度数据传输给基站节点。数据采集节点主要由电源模块、处理器模块、温湿度传感器收集模块和无线通信模块4个模块构成的:1、电源:采用两节1.5V的纽扣电池组成的3V直流电为整个系统供电。2、处理器模块和无线通信模块:采用增强型工业标准的CC2430核心板,它是加强版的Zigbee模块。3、温湿度传感器收集模块:采用CC2430核心板集成温湿度传感器SHT10。数据采集节点的硬件框图如图3-2所示:图3-2为数据采集节点硬件框架图该芯片的主要优点有以下几点[8]:1、功耗低:由于该节点应用了Zigbee技术,而Zigbee采用了多种节省功耗的工作模式,所以使用2节的5号电池可以确保节点工作1~2年。从而解决了功耗的问题。2、成本低:由于Zigbee协议是免专利费用以及其工作的频段为2.4Hz(免执照频段),所以减少了设备的成本。3、自组网、自愈能力强:网络间个个节点之间无需人为操作下,可自行感知周围其他节点,并与其建立连接关系,组成相应的网络。当删除或添加网络中的一个节点时,或则是节点故障等情况发生不会导致网络瘫痪,因为自身网络能够进行自我的修复、调整,从而使整个系统继续正常工作。41 4、除了以上优点外,该芯片还具有节点间通讯间距远、可靠性高、数据安全以及网络容纳量大等众多优点。本系统中负责服务端和远程主机端通信的设备采用的是SIMCOM公司(希姆)生产的一款三频段GSM/GPRS模块SIM300以及外围外接的单片机芯片组成的。由于其内嵌TCP/IP协议栈以及GPRS标准,再加上其低功耗、高传输速率以及性能优良等诸多特点,所以SIM300的应用范围很广泛,特别是在于开发一些GSM/GPRS的无线应用产品更受到业内人士的钟爱。图3-3是SIM300及其外围芯片实物图。图3-3SIM300及其外围芯片实物图使用串口将应用系统和SIM300及其外围电路连接起来,应用系统通过GPRS模块的AT指令向SIM300核心板发送控制指令,从而对其产生控制行为。SIM300模块拥有一套完整的、标准的AT命令集,包括一般命令、(中英文)短消息控制命令、电话本控制命令、GPRS命令、网络服务命令以及呼叫控制命令等。本系统的SIM300模块主要负责从基站接收数据,并存储在数据库中,并通过GPRS网络以及对相应的AT指令的响应后发送到远程的主机上。从而实现将基站的数据存储在服务端的数据以及远程主机上。图3-4是SIM300模块反面电话卡的插槽实物图。41 图3-4反面电话卡插槽本系统中数据采集节点及其基站节点程序是采用NesC编写,通过Cygwin环境平台编译的。NesC是对C语言的扩展(也有一种说法是说NesC是集结了C、C++、java等三种语言的),它基于体现TinyOS的结构化概念和执行模型而设计的。这是一种针对于程序工作者开发基于结构化的组件编程而产生的新语言。NesC语言主要是用在传感器网络(特别是无线传感器网络)等嵌入式系统。与C语言的存储格式不同,用NesC语言编写的文件是以“.nc”为后缀。NesC的最大特点是将组件化/模块化思想和基于事件驱动的执行模型相结合。图3-5是源程序到烧录的示意图。图3-5源码到烧录的示意图41 所以每个nc文件实现一个组件功能(组件化/模块化)。在nesC程序中,主要定义两种功能不同的组件——组件(configuration)和模块(module)[9]。组件主要是描述组件不同接口的关系,完成各个组件接口之间的相互连接和调用。一个组件必须实现它提供接口的指令和它的使用的接口事件。组件之间通过接口彼此静态地相连。组件相关执行部分主要包含提供给其他组件的接口和配件要使用的接口的组件接口列表和如何将各个组件接口连接在一起的执行连接列表。在应用程序中存在多个配置文件,并且配件之间存在一个层次关系。模块主要用于描述组件的接口函数功能以及具体的实现过程,每个模块的具体执行都由4个相关部分组成:数据帧、一组执行线程、事件函数和命令函数。不同的模块可以实现相同的接口。一个NesC应用程序有3个部份组成:声明和定义、接口类型和组件,每一个NesC应用程序是由一个或则多个组件通过接口链接起来,并通过ncc或gcc编译生成一个完整的可执行程序。Cygwin是一个类Linux模拟仿真器,但它是运行在Windows环境下的。Cygwin是由CygnusSolutions公司开发的自由软件。Cygwin包括了一套库,该库在Win32系统下实现了POSIX系统所要调用的应用程序接口(API);以及自己的一套GNU开发工具集(如GDB、GCC),这样我们可以在windows下进行简单的Unix软件开发;还有一些UNIX系统下的常见程序[10]。CygnusSolutions公司把gas、gdb、gcc等软件开发工具进行了一些的改进,使它们能够生成并解析Win32的目标文件。接着公司的工程师们要把这些工具移植到Windows平台上去。他们写了一个cygwin库(共享库),把Win32API中没有的Unix风格的调用等全部封装在该共享库里。那么,在开发程序的过程中,我们只要把共享库和这些工具的源代码链接起来,就可以通过Unix上的交叉编译器生成在Windows平台上运行的工具集。从而程序开发者就可以在windows平台上使用用户工具盒开发工具,并可以运行bash等工具,从而在Windows环境下使用Unix的工具。本系统采用微软的基础类库MFC作为服务端和远程主机端程序的编写。并采用SQLServer2005作为系统后台数据库的支持。MFC是MicrosoftFoundationClasses(微软基础类)的简称。它以C++的编程风格封装了Windows的API,即减少了大量在建立Windows程序时必须编写的代码,同时还为程序工作者提供了一个应用程序框架,从而大大的提高了程序工作者的工作效率。由于它是C++的风格,所以它还提供了所有一般C++编程的优点,例如继承和封装。MFC是可移植的,例如,在Windows3.1下编写的代码可以很容易地移植到WindowsNT或Windows95上[11]。MFC是一个扩展了C++类层次结构的类库,而且是一个很庞大的类库,它让程序工作者在开发Windows应用程序时不再像以前晦涩难懂。MFC可以兼容整个Windows家族的应用程序开发,也就是说,无论是Windows3.x、Windows95还是WindowsNT,所使用的MFC类库都是兼容的。每每有新的Windows版本出现时,MFC类库工作者都会根据新版Windows特点来修改41 类库,从而使得无论新旧编译器都可以兼容MFC,以便减轻程序工作者的工作量和兼容性。通过Visualc++6.0建立的MFC框架如图3-6所示[12]。图3-6MFC应用程序框架SQLServer2005是Microsoft公司推出的全面的关系型数据库服务器产品,是面向企业级用户的数据库应用平台。它给企业级应用数据和分析程序带来了极高的安全性与稳定性,并以其易于操作与管理的特性极大地提升了企业的运营效率[13]。SQL即StructuredQueryLanguage的缩写,中文译为结构化查询语言。Server中文译为服务器,而2005代表的是版本号。SQLServer2005不同于以往的数据库服务器,它不仅是一个网络数据库服务器,实质上还是一个关系型数据库,同时还是一个数据分析平台。它为用户提供了一个安全、可靠、高效的开发平台,能够广泛的应用于企业数据管理和商业智能。通过全面的功能集、现有系统的集成性以及对日常任务的自动化管理能力,SQLServer2005为不同规模的企业提供全面的、集成的、端到端的数据解决方案。SQLServer2005的组件架构如图3-7所示[14]。图3-7SQLServer2005的组件架构41 第四章系统软硬件的设计和实现早期对蔬菜大棚内温湿度的监控是采用手工控制的,通过长期的经验积累,对蔬菜大棚内农作物的生长状况的记录等形成的依据,直接对大棚的温湿度进行调节以使给大棚里的作物一个适宜生长的环境。而基于Zigbee网络的蔬菜大棚监控系统可以节省一定的人力资源,将收集到的数据和系统设置的上下限进行对比,将准确的进行报警,通知相关人员进行处理。相比于人工管理阶段,本系统一定程度上提高了生产效率[15]。在设计本系统的时候,充分考虑到了系统界面的友好、方便于用户操作;数据传输和接收的实时性以及整个系统的稳定、安全等因素。本系统主要致力于软件的设计上,实现了系统的启动和关闭、温湿度的实时监控、险情警示、温湿度上下阀值设置、查询历史记录、按需删除历史记录、管理用户等功能。4.1数据采集节点的设计和实现数据采集节点按功能模块划分可分为:温湿度数据采集模块和数据发送模块(无线通信模块)。下面详细介绍这两个模块。4.1.1温湿度数据采集模块温湿度采集模块式采用温湿度传感器SHT10。SHT10是一款含有已校准数字信号输出的温湿度复合传感器,采用CMOSens专利技术将温度湿度传感器、A/D转换器及数字接口无缝结合。SHT10与CC2430连接电路原理图如图4-1所示:图4-1CC2430与SHT10连接电路原理图该传感器由1个能隙式测温元件、1个电容式聚合体测湿元件、1个14位A/D转换器和41 1个2-wire数字接口组成,使得该产品具有体积小、精度高、功耗低、反应快、抗干扰能力强等优点。而且SHT10数字式传感器具有类似I2C总线数字接口的通信方式与CRC数据传输校验。数据采集节点在上电后,经过11ms后,SHT10会从休眠状态恢复到等待状态;接着发送一组“传输启动”时序进行数据传输的初始化工作[16]。然后发送一组测量命令(其中相对湿度RH量的时序命令为“00000101”,摄氏温度T量的时序命令为“00000011”)开始测量周围的温湿度量,等待测量结束(大约需要20/80/320ms对应其8/12/14位的时间);最后SHT10将下拉DATA到低电平(进入空闲模式)表示测量结束了,并传入一个字节的CRC校验并开始接收数据[17]。该流程图如图4-2所示:开始传输启动测量命令设P1.1为输入YP1.1=1?N接收数据返回图4-2为温湿度数据采集模块流程图其中产生启动传输时序的程序片段如下:  //相关其他的代码……  P1_1=1;41   P1_0=1;  wait(1);P1_1=0;  wait(1);  P1_0=0;  wait(1);  P1_0=1;  wait(1);  P1_1=1;  wait(1);  P1_0=0;  ……//其他相关代码4.1.2无线通信模块CC2430是一块符合IEEE802.15.4标准的片上Zigbee芯片。它的无线通信模块的基础是数据采集节点之间是采用点对点的通信方式。其数据采集的流程图如图4-3所示:图4-3数据采集节点流程图41 在系统启动,数据采集节点开启后,并完成初始化工作后,节点将开始搜索其无线范围内的网络信息。由于Zibgee网络内的节点具有路由转发的功能,所以节点之间也可以互发数据,直至将源数据发送到最终的基站节点。接下来介绍点对点通信的实现。表4-1MAC层数据帧格式1111~1222目标地址(DA)源地址(SA)标志位(Flags)有效负载(Payload)帧校验(FCS)由上表4-1可知:1、目标地址是用1个字节表示,它是数据采集节点在同组网络中自身的编号。2、源地址也是用1个字节表示,它和目标地址是一个相对的概念。3、标志位用1个字节来表示,当第1位为1时,表示目标节点在收到该数据帧后要答复;当第2位为1时表示该帧是接收到数据帧后的答复帧;当第3位为1时,表示该帧是超时重传的数据帧;当当数据帧中Flags字节的第8位为1时,表示该帧是数据序列中的一帧。4、有效负载是用1~122不等字节表示,由于IEEE802.15.4协议的规范中规定了数据在传输时的物理服务数据单元(PSDU)的最大负载量为127个字节,而由于已经被使用了5个字节,所以数据的有效负载的长度只能介于1~122个字节之间。每当有超过有效负载长度(超过122个字节)的数据需要发送时,我们需要将数据进行拆解,拆解成符合IEEE802.15.4协议规定的数据长度。而负责接收数据的节点则需要将分成段得数据进行整合后才可进行使用。5、帧校验由2字节组成,它是对物理层协议的数据单元MPDU的校验。如果CC2430芯片中的RF寄存器相关的某些控制位设为高电平(即为1)的时候,帧校验FCS将由硬件自动来继续调整,燃油由多项式x16+x12+x5+1进行CRC软件校验和生成。数据采集节点发送数据的步骤可以总结为5步,具体的流程如下:1、系统初始化主要是将整个系统的工作频率(晶振频率)设置为32MHz,,为后面的RF初始化调工了必要的条件。2、RF初始化主要是设置通信频率,设置电源,并使用代码清空Rx和Tx,并开启Rx等工作。3、DMA的初始化主要是为Tx分配1个空闲的DMA通道,并为其设置相应的数据结构。4、当设置为Tx准备的DMA通道时,需将数据的源地址设为所要发送数据的起始地址,目标地址设为寄存器RFD的地址。然后,在设置所要发送数据的长度。并设置DMA数据按字节进行传输以及一些必要位的设置从而完成DMA的设置。5、等到DMA描述等的设置好后,系统将启动DMA通道上数据块的传输。而在我们启动DMA通道数据传输之前,将当前数据帧的标志字节、目标节点地址、源节点地址、数据长度通过直接写寄存器RFD的方式写入TxFIFO。通过这样的流程后,我们在启动DMA通道传输后,完整的数据帧将会被传输到TxFIFO。最后发送指令ISTXONCCA给CSP来启动Tx传输。这样子就完成发送一帧数据的整个过程。41 数据采集节点发送数据的流程图如图4-4所示:开始系统初始化RF初始化DMA初始化DMA设置将帧数据写入缓存NRSSL正常?Y开启Tx并延时启动Tx返回图4-4发送数据流程图4.2基站节点的设计和实现4.2.1IEEE802.15.4标准和Zigbee协议介绍IEEE(InstituteofElectricalandElectronicsEngineers美国电气和电子工程师协会)无线个人区域网工作组的IEEE802.15.4技术标准是Zigbee的技术基础。IEEE802.15.4标准的制定是为低能耗的简单设备提供有效覆盖范围在10m之内的低速连接,用用于用于无线监测、工业控制等消费与商用应用领域。IEEE802.15.4支持两种的网络拓扑结构,即单跳星状或当通信线路超过10m时的多跳对等拓扑。但是对等拓扑的逻辑结构由网络层定义。LR-WPAN中的器件既可以使用64位IEEE地址,也可以使用在关联过程中指配的16位短地址。一个IEEE802.15.4网最多可以容纳216个器件。41 IEEE802.15.4标准最重要的特点是低功耗。因为在现实中用电池供电的嵌入式器件,经常的更换电池所产生的费用往往比器件本身的成本还要高。所以在IEEE802.15.4标准的制定中,在数据传输过程中引入了节省功率的机制。多数机制是基于信标使能的方式,主要是限制器件或协调器之收发信机的开通时间,或者在无数据传输时使它们处于休眠状态[18],从而很大程度上降低了嵌入式应用设备的功耗量。IEEE802.15.4标准里有三种不同的数据传输方式从而突出了低功耗的特点:间接数据传输、直接数据传输和有时隙保证的数据传输。Zigbee网络是一种高可靠性的无线数字传输网络,它可工作在三种流行的免费频段上(如全球流行的2.4GHz、美国流行的915MHz和欧洲流行的868MHz)。其传输速率分别可以达到250kbit/s、40kbit/s和20kbit/s。Zigbee是一组基于IEEE批准通过的IEEE802.15.4无线标准研制开发的组网、安全和应用软件方面的技术标准。并由ZigbeeAlliance和IEEE802.15.4小组共同制定了Zigbee技术标准。Zigbee栈体系结构由一组称为层的块儿组成。每个层为上层执行指定一套服务:数据实体提供数据传输服务,管理实体提供所有其它服务。每个服务实体通过一个服务接入点(SAP)为上层提供一个接口,每个SAP支持一些服务原语来完成必须的功能[19]。Zigbee网络层(NWK)支持星形、树状形和网状拓扑结构三种结构。在星状形的拓扑结构里,整个网络是由一个独立的通信设备Zigbee协调器来进行控制[20]。Zigbee协调器的功能主要是负责对已连入网络中的节点进行控制和维护。在树状形拓扑和网状拓扑结构里,Zigbee协调器得功能主要是对已建立的网络中的一些参数进行选择、确定和设置等。ZigBee网络的组建主要是为工业化的现场实现自动化控制时对数据的传输。它的协议规范使得设备功耗低、工作可靠、工作安全、结构简单、价格低廉、使用方便等特点。而移动通信网的CDMA网或GSM网主要是为用户的语音的通信而建立的,其单个基站的费用一般都在百万元以上,而Zigbee协议中的每个Zigbee的基站价值却不到人民币1000元。基于以上对Zigbee节点的分析,我们选择使用CC2430的基站节点。4.2.2基站节点实现功能描述基站节点是作为整个系统的核心部分,它应用Zigbee网络从数据采集节点收集它们的温湿度数据,然后按一定的数据格式编码后,最后通过串口通信方式将数据传到上位机(服务端)上。图4-5向我们展示了基站节点的实物图:41 图4-5基站节点实物图上位机是负责从基站那里收集数据,并将数据存储在上位机(或则其他上位机)的数据库里面,这样子上位机就可以为用户提供丰富的软件服务提供了数据支持。而基站向服务器端发送的数据要有一定的数据格式(数据传输协议),从而来规范和保证数据传输的正确性。基站和上位机通讯的协议如表4-2所示:表4-2基站和上位机通讯协议表字段长度字节序内容包头包头标志1字节默认为0x37硬件类型2字节BigEndian默认值0x240x30包负载长度2字节BigEndian减去9字节后为传感器数据长度数据传感器类型2字节BigEndian详细定义参考表4-3下一跳节点编号2字节BigEndian若如果节点的数据经过路由转发,那么第一次转发的节点编号便是该字段值源发数据节点编号2字节BigEndian最初发送传感器数据的节点编号顺序号2字节BigEndian保留默认为0x000x00跳数1字节路由转发过程中所经过的节点数传感器数据(包负载长度-9)字节BigEndian源节点传输的数据校验位校验码1字节除包头标志外所有字节的异或的结果通过串口调试可以验证我们收到的收据也是20个字节的,详细数据如图4-6所示:41 图4-6从基站收到的数据由表4-2和图4-5可知基站给上位机传输的数据是由三部分组成的:包头、数据和校验码。其中1、包头段:包头段共有5个字节,其中1个字节的包头标志、2个字节的硬件类型和2个字节的包负载长度。包头标志固定是0x37。硬件类型也是固定的0x300x24。包负载长度指定了基站向上位机所传输的数据的字节数。2、数据段:数据段的总字节数取决于传感器数据的字节数,由如图3-9可知包负载长度为0x0E所以传感器数据的字节数是5个字节,所以数据段的总字节数是14个字节。其中包含2个字节的传感器类型,该段的定义详见表4-3;接着是2个字节的数据来表示吓一跳节点的ID,如果节点是直接和基站通表4-3传感器类型定义图传感器名称缩写类型值温湿度TH1温度T2光LIGHT3流量FLUX4血压BLOOD_PRESSURE5海拔高度ALTITUDE6磁场HOARE7雨滴RAIN841 讯的该字段应该同最初发送信息节点的ID是一致的,否则说明节点的数据是被其他节点转发到基站的,并且这个字段的值就是首发转发的节点的ID;再接着就是2个字节的字段来表示最初发送信息节点的ID;然后是用2个字节来表示节点的顺序号,该字段的值是保留值为0x000x00;接着用1个字节数据来表示节点的跳数;最后使用5个字节来传输节点传来的温湿度数据,关于温湿度数据的解码将在下一小节进行详解。3、校验码段:校验码字段是用1个字节来表示的。它的值是前面除包头标志外的所有字节异或的结果。4.2.3温湿度数据解码基站将温湿度数据传输给上位机后,上位机的应用软件将这些数据进行解码,让数据以更直观的形式展示给用户。这些数据包括温湿度采集节点的编号、该位置节点测到的温度和湿度:1、节点编号的解码:由图4-7可知在传输的协议中的9、10字节决定了是哪个编号的节点传来的数据,所以在上位机的应用软件中使用a=RXData[9]*256+RXData[10];便可以解码出节点的编号,其中RXData就是我们接收到的一次数据编码,它共有20个字节,由图4-8也可知道。2、温度数据的解码:经过多次的数据收集和计算,最后可知温度数据是由14~18字节中的15、16字节决定的。再根据如图4-7公式和图4-8的系数可以得到温度数据图4-7温度转化公式图4-8相关系数参考图4-9中Temperature是我们所要解码的温度数据,d1和d2系数的值要参考图4-10中的值。经过多次计算对比可以得到该段的程序源码如图4-9所示:41 图4-9温度解码程序3、湿度数据的解码:湿度数据的解码比温度复杂了许多,它还需要温度的数据。为了补偿湿度传感器的非线性以获得准确的数据,首先我们要进行如图4-10的公式来修正输出数值:图4-10湿度非线性补偿公式其中c1、c2、c3系数的值如图4-11所示,SOrh的值是我们协议中17、18字节的数据决定的。图4-11湿度转换系数接着需要对湿度传感器相对湿度的温度补偿的计算,依据图4-12的公式:图4-12湿度传感器相对于温度的转化公式该公式中的T是我们测出的温度数据,t1、t2的系数值参照图4-13:图4-13t1、t2系数参考经过多次的测量、比较、计算可得到如图4-14的源程序来解码湿度数据:图4-14解码湿度数据源码4.3节点程序的烧录节点(数据采集节点和基站节点)的程序是用NesC编写完成,而烧录需要在Cygwin环境下完成。Cygwin是一个在windows平台上运行的unix模拟环境。41 (1)数据采集节点程序烧录步骤1、设置Cygwin环境。首先启动Cygwin环境,进入/opt/atos路径,如图4-15所示:图4-15进入/opt/atos路径然后执行命令脚本setupenv,如图4-18所示:图4-16执行脚本命令这样子我们就可应使用命令行“export|grepATOSROOT”来查看设置的结果,如图4-19所示:图4-16查看设置结果当然我们可以将命令脚本写入到.bashrc中,这样子每次启动Cygwin时就会自动配置环境。2、编译NesC程序源码。进入数据采集节点程序所在的目录/opt/tinyos-2.x/apps/tutorials/BlinkTask。可以看到下面有3个文件,如图4-17所示:图4-17进入源码程序所在目录接着用make命令编译antc3程序,如图4-18所示:图4-18编译程序编译成功的话,会出现如图4-19的提示:41 图4-19编译成功提示如果有出现错误,一般可能是因为环境没设置好,这时我们可以从新配置一次环境,也有可能是未安装Keil这个软件,安装好该软件后,再试试就可以了。(2)数据采集节点的程序烧录首先要连接硬件,将CC2430节点插入到网管办的插口处,并用串口线将CC2430和PC机相连,其连接图如图4-20所示:图4-20烧录硬件连接图接着使用命令行进入到节点程序所在的目录,如图4-21所示:图4-21进入节点程序所在目录然后执行烧录命令行,如图4-22所示:图4-22烧录命令其中makeantc3表示编译该程序。ASO:代表了传感器类型的选择,ASO=TH表示我们选择的是温湿度类型的传感器。TYPE:代表了传感器数据类型号,TH=1表示我们选择的传感器数据类型是温湿度数据。41 NID(NodeID):指定了数据采集节点的节点号,该编号只能从02开始,而且必须为2位的十六进制(位数不够要补0)GRP:指定了数据采集节点所在的网络编号,所有的数据采集节点的该编号要一致,即和基站的网络组编号要一样。该编号也是2为的十六进制数。烧录成功就会有如图4-23所示的提示:Erasingflash…Programmingflash…………EraseandprogramOKEraseandprogramOK图4-23烧录成功的提示(3)基站节点程序烧录步骤首先也要连接硬件,将CC2430节点插入到网管办的插口处,并用串口线将CC2430和PC机相连。接着使用命令行进入到基站节点程序所在的目录:图4-24进入基站节点程序所在目录然后执行烧录命令行,如图4-25所示:图4-25烧录命令其中makeantc3表示编译该程序。41 这里没有ASO和TYPE等指定。NID(NodeID):指定了基站节点的节点号,该编号只能为01。GRP:指定了基站点所在的网络编号,该编号指定后,其他所有的数据采集节点的网络组号必须和该值一致。该编号也是2为的十六进制数(不够补0)。烧录成功就会有如图4-26所示的提示:Erasingflash…Programmingflash…………EraseandprogramOKEraseandprogramOK图4-26烧录成功提示4.4服务端的设计和实现服务端主要是通过串口线从基站获取到各个传感器数据采集节点传输过来的温湿度数据,并存储在服务端的数据库上,接着将每条数据通过SIM300的GPRS功能将其发送到远程主机上。服务端程序也是由MFC来完成其界面的。通过串口的响应来接收温湿度数据,接着读取服务端的系统时间,并解码温湿度数据(关于温湿度数据的解码详见4.2.2小节和4.2.3小节),然后再根据解码得到的数据将其继续编码最后通过GPRS发送到远程主机端上,编码的主要源码如下:CStringstring1;//m_pReviceData="";string1+="D";string1+=SystemTime;//时间string1+="N";string1+=num;//节点号string1+="T";string1+=wendu;//温度41 string1+="R";string1+=shidu;string1+="E";//湿度以及结束字符比如我们收到的一条数据是“2011-11-0512:23:45323.673”,那么通过上面的编码,最后发往远城主机端的数据是“D2011-11-0512:23:45N3T23.6R73E”。接着将已重新编码的数据通过GPRS的AT指令发往SIM300模块,通过GPRS网络往远程主机端上发送,其主要代码如下[21]:CStringstring2="AT+CIPSENDr ";string2+=string1;m_pMyComm2.SetOutput(COleVariant(string2));CByteArrayhexdata;hexdata.Add(0x1a);//结束的十六进制字符1am_pMyComm2.SetOutput(COleVariant(hexdata));最后将收到的数据通过一定的代码组织将其写入数据库,关于数据库的存储主要代码如图4-27所示:图4-27数据库存储主要源码以上的工作主要是完成了服务器端的主要工作,服务端运行起来的界面如图4-28所示。图4-28服务端主界面4.5远程主机端的设计和实现远程主机端41 主要是负责从基站接收数据,并解析、取舍、解码温湿度数据,然后将接收时间、节点号、温湿度的值都存储在主机的数据库中,从而为应用软件提供服务。本文作者使用MFC来构建应用程序和SQLServer2005来存储数据。4.5.1主机服务端应用软件设计分析服务器端的应用软件设计有用户操作界面和数据库存储设计。其中用户界面的操作涵盖了整个系统的需求,所以它被作为真个应用软件的核心部分。它主要实现以下几个方面的功能:1、用户登录:该功能模块是在打开应用软件时必须要求用户执行的一个操作。而且用户的权限要分为两种,一种是普通用户,一种是超级用户,超级用户拥有最高的操作权限,拥有超级用户权限的用户可以对应用软件执行所有的操作;而普通用户就不能执行添加用户、删除用户、删除数据等的操作,这也是和超级用户的区别,从而增加了系统的安全性能。2、温湿度数据显示:这里将实时的显示从基站传过来的温湿度数据,让用户直观的看到大棚什么时候、哪个节点(哪里)的温湿度数据。另外在收到正确的数据后,系统将会将这些数据写到数据库中保存起来。3、报警功能:系统应该处理大棚中温湿度超标时的情况,所以应用软件在操作界面应该有该功能。为了减少因为偶然因素引起的误报警,在某个节点在温湿度连续收集3次的值都超过临界值,那么系统将给予报警。而报警的处理方式就是在界面上形成视觉的反差从而引起用户的注意。4、历史数据的查询:这个是为了方便用户查看历史数据而设定的功能。它包括历史数据以图表和曲线图的方式展示给用户。5、数据的删除:该功能主要是为了在节点位置、信息更新时所进行的操作,从而保障数据的正确性。6、用户操作:该功能主要是增加用户、修改密码、删除用户三个功能。增加用户和删除用户只有超级用户才有权限的操作。而修改密码视为了用户的安全,普通用户拥有修改密码的权限。服务器端数据库的存储设计,也是在主机服务器端进行的,它是运行在SQLServer2005数据库服务器上的,通过对数据库的访问,将读取出保存在数据库中的数据。在这里我们将采用ADO技术来进行对此的管理。使用预处理指令:#import#import"C:ProgramFilesCommonFilesSystemADOmsado15.dll" o_namespacerename("EOF","EndOfFile")在编译过程中,VC++会读出msado15.dll中的类型库信息,自动产生两个该类型库的头文件和实现文件msado15.tlh和msado15.tli(在Debug或Release目录下)。41 4.5.2主机服务端应用软件部分功能实现1)登陆模块登陆模块主要是用来授权用户进入系统,对系统进行操作。登陆界面如下图4-29所示:图4-29系统登陆界面在“用户名”中输入已授权的用户名,在密码处输入密码;接着按登陆,系统将连接数据库的用户登录表进行校验。如果用户名和密码都对了,将允许你进入该系统,如图4-30所示。图4-30身份验证成功提示框如果不对将出现提示,并让你重新输入,如图4-31所示:图4-31身份验证失败提示框41 2)主界面主界面里面有菜单栏、工具栏、显示界面。菜单栏有文件、查看、关于、安全设置等选项。工具栏有打开监控和关闭监控两个选项。显示界面中有即时监控和历史数据。通过Tab空间进行两者之间的切换。如图4-32所示图4-32系统主界面m_pMyAtosenet.AddPage("即时监控",&MonitoringDlg,IDD_DIALOG1);m_pMyAtosenet.AddPage("历史数据",&HistoricalDlg,IDD_DIALOG2);两条语句将实现上图中”即时监控”和”历史数据”的初始化显示。目前显示在“即时监控”界面,该界面分左右两部分。左边实现从基站传来数据的显示;有半部分实现预警功能,即如果温湿度超过了温湿度上下限三次的时候相应的绿灯将会以红灯闪烁的形式产生视觉差距,从而更容易引起用户的注意力,从而更加实时的区操作。待警报处理完后,用户只需点点红色的灯,系统立马会将灯的颜色切换成绿色的。当然用户也可以根据实际的蔬菜大棚温湿度情况需要来调节系统温湿度上下限的报警值,只要报警值一变,系统也会立马识别到该报警数据。图4-33向用户展示了”历史数据”的界面。这里有六个漂亮的按钮,它们分别是代表6个温湿度采集节点。用户只需按下要查询的节点号的数字,系统将为你展现出该节点所有的历史的温湿度数据。41 图4-33历史数据查看界面“历史数据”界面的左下部分是通过曲线的形式给我们展现历史数据,以更加形象的方式给用户提供数据,供用户查看。温度为曲线图的界面如图4-34所示:图4-34温度曲线图41 在曲线图查看中,我们通过上面的选择日期、节点号的选择可以方便的看到一天中24小时温度最高和最低的曲线图,如图4-35所示:图4-35通过查询得到的温度曲线图至此我们可以形象的看到某天中24小时之内某节点在某时刻最高和最低的温度值。当然“及时监控”界面中的湿度曲线图和温度曲线图是类似的。图4-36的”历史数据”界面的右半部分是数据删除区。图4-36删除数据区用户根据实际需要来选择删除某天内所有节点或某天内指定节点或某节点的所有数据。如果用户只选择”按日期删除”,那么系统将删除某天内所有节点的数据;如果用户只选择”按节点号删除”,那么系统将删除指定节点的所有数据;41 如果用户这两个选项都选了,那么系统将删除某天内指点节点号的所有数据;在删除前系统将会跳出如图4-37的提示图4-37删除数据确认提示此时用户点确定,那么系统将删除指定的数据,这些数据是恢复不了的,所以用户请谨慎使用。如果用户都没选择那么,系统将会跳出如图4-38的提示框来提醒用户图4-38选择提示框在系统中的菜单栏中共有4个选项,分别是”文件”、”查看”,”关于”和”安全设置”。在查看选项中,用户可以选择”打开监控”,”关闭监控”和”退出”。初始时,由于系统为开启监控,所以”关闭监控”那项是不能操作的(灰白),当我们选择”打开监控”,那么”关闭监控”就可以执行了,而”打开监控”选项此时就不能执行了。同时系统的工具栏上也会实时的变化。当我们选择“退出”选项时,系统将关闭监控并断开数据库,最后关闭界面,退出系统,如图4-39所示。图4-39菜单栏“文件”选项在查看的菜单选项卡中有”即时数据”和”历史数据”两项。用户可以更具实际情况来选择查看,如图4-40所示。图4-40菜单栏“查看”选项41 在关于的菜单选项卡中我们可以看到该系统的一些信息。在“安全设置”的选项卡中友如下图4-41所示的一些功能.。图4-41安全设置内容由上图可知在安全设置中我们可以选择”增加用户”、”修改密码”和”删除用户”三个功能。不过在这普通用户只能修改自身的密码,而卧权限增加和删除用户。超级用户可以选择增加用户、修改密码、删除用户三个功能在删除用户中,超级用户是不能删除超级用户的。通过此设置将提高整个系统的安全性能。具体功能实现如下:1)增加用户((普通用户无权限)。在这个功能中用户必须输入新的用户名、密码和确认密码,以及选择是否将新用户添加为超级用户,如图4-42所示。图4-42增加用户对话框2)修改密码。普通用户和超级用户都可以使用此功能。在这边输入新密码和确认密码,只要两次的输入密码一致,那么系统将为你修改密码。此时退出系统,既可以用新密码登陆,如图4-43所示。41 图4-43修改密码对话框3)删除用户(普通用户无权限)。在这里用户可以选择删除一些用户,而且只能是普通用户。系统将会通过数据库去查询是否存在该用户,如果存在则给予删除,不存在该用户则会提醒用户;如果所删的是超级用户,系统也将提醒用户,并不给予删除,如图4-44所示。图4-44删除用户对话框41 第五章系统运行和验证本次运行验证主要是使用5个温湿度传感器数据采集节点(编号为2、3、4、5、6)分别放在不同的位置(两两之间的距离小于100m),接着按如图5-1所示连接好基站模块。图5-1基站模块连接示意图接着按图5-2所示连接上SIM300模块。.图5-2完整的硬件连接图41 接着在一台PC上(本次测试在装有win7旗舰版的个人计算机上)打开远程主机端应用程序Atosenet,图4-35是其主界面,点击下面的“建立连接”按钮,这时候远程主机端已建立连接,如果建立连接失败系统将会有相应的提示。然后再另一台PC(装有XP系统的个人计算机上)运行服务端主程序,并在远程主机端IP栏和端口号中输入远程主机端中的“本地IP”和“端口号”,如图5-3所示。接着点击“连接网络”的按钮,数秒后将建立起和远程主机端的网络连接。图5-3连接到网络后的界面在监控已打开的情况下,远程主机端将收集到来自服务端的温湿度数据,其结果如图5-4所示:图5-4远程主机端的验证结果(右边红色为预警灯)41 第六章结论本文总共分为4章:其中第一章介绍了本文研究的背景和意义,还描述了该技术的相关领域的国内外的研究现状,并介绍了本文的主要工作。第二章描述了系统结构的框架。第三章对系统的软硬件的实现进行了论述,其中涉及了系统的开发环境以及各个节点的实现。第四章对本文进行了总结。通过对现有的农业大棚所用技术的讨论,提出了一种基于Zigbee无线网络的远程对蔬菜大棚内温湿度管理的系统。从数据采集节点、基站和主机服务器段等几个角度,具体设计和实现了各自的功能模块。本文将讨论该系统的硬件构成和软件设计,即系统的数据采集部分,数据转发部分(基站),远程主机(提供用户数据查询)。其中数据采集部分和数据转发部分是基于增强型工业标准的8051核单片机处理器构成的。远程主机主要是收集基站发来的数据、存储、并提供用户查询、管理。重点是放在软件设计上。本文实现的远程主机端的软件系统人机交互界面友好,操作简单,并通过了对远程蔬菜大棚内温湿度数据的采集及监测的结果,可知道本系统的设计能够有效的实现对远程蔬菜大棚内的温湿度数据进行采集、传输、显示和报警的预期功能。随着计算机技术和无线技术不断的发展,农业大棚的环境监控将会呈现出多种多样的技术,所以需要研究的内容很多很多,由于时间的关系,本文在数据库访问速率以及C/S模式向B/S模式转化问题没有进一步研究以及对监控这块做的还不够成熟,还有待进一步的研究和解决。41 参考文献[1]金海红.基于Zigbee的无线传感器网络节点的设计及其通信的研究[J].合肥工业大学学报,2007,6(5)36-40.[2]瞿雷,刘盛德,胡咸斌.Zigbee技术及应用[M].北京:北京航空航天大学出版社,2007:13-16.[3]王玮,樊则宾.基于CC2430的无线温度检测终端的设计[J].电子工程师,2007,12(5):78-80.[4]吕治安.Zigbee网络原理与应用开发[M].北京:北京航空航天大学出版社,2008:12-13.[5]刘青,宋立军.Zigbee无线传感器网络组网研究[J].电脑开发与应用,2008,6(21):45-48.[6]耿萌,于宏毅,张效义.Zigbee路由协议分析与性能评估[J].计算机工程与应用,2007,43(26):116-120.[7]王东霞,贺金龙,窦文华.无线传感器网络研究综述[J].计算机测量与控制,2004.[8]金纯,罗祖秋,罗凤,等.Zigbee技术基础及案例分析[M].北京:国防工业出版社,2008:329-332.[9]乔晓军,张馨,王成,等.无线传感器网络在农业中的应用[J].农业工程学报,2005,21(2):232-234.[10]孙利民,李建中,陈渝.无线传感网络[M].北京:清华大学出版社,2005.[11]DvidJ王国印(译).VisualC++技术内幕[M].北京:清华大学出版社,1996.[12]JeffProsise.MFCWindows程序设计[M].北京:清华大学出版社,2001..[13]吴婕.浅析数据挖掘软件的发展[J].情报理论与实践,2004(2):212.[14]朱如龙.SQLServer数据库应用系统开发技术[M].北京:机械工业出版社,2004.[15]李现勇.VisualC++串口通信技术与工程实践[M].北京:人民邮电出版社,2004:22-34.[16]董蕴华,石新峰.Zigbee技术在粮库温度监控系统中的应用[J].安徽农业科学,2008,36(35):15744-15745.[17]赵妍,岳炳良,高大伟.Zigbee无线解决方案网络层研究[J].计算机测量与控制,2007,15(5):689-694.[18]李邦祥,王忠锋,于海斌.Zigbee协议网络层的设计与实现[J].微计算机信息,2008,24(4-2):41-42.[19]李文仲,段朝玉.PIC单片机与Zigbee无线网络实战[M].北京:北京航空航天大学出版社,2007:227-229.[20]韩晓冰,韩冰,孙弋.基于嵌入式系统的GPRS数据终端设计与实现[J].仪器仪表学报,2006,27(6):675-677.[21]谢春祥,张虹,聂余满.基于GSM/GPRS的终端式短信平台开发[J].计算机工程与设计,2007,4:1680-1682.41 41

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
大家都在看
近期热门
关闭