基于ZigBee的温室环境监控系统设计

摘 要

在进行农业的种植、培育和生产的过程当中,有着许多因素都会制约作物的最终产量,比如光照强度、环境温度、空气湿度、土壤湿度以及空气中CO2的浓度。从古至今的数千年的农业种植过程当中,这些影响作物产量的重要因素一直无法精确地被控制,基本上是靠着经验来进行粗略地判断。但是这根本无法使农业生产的效益最大化,正是因为这个原因,使中国始终是一个农业大国,而非农业强国。
正因为农业体量大、却不发达的特点,本论文使用ZigBee技术,对温室大棚监控系统进行了开发。这个系统当中包含了三个主要节点,分别是终端采集、控制节点和数据汇集。通过这三个节点的设计,我们就能够利用无ZigBee无线自组网络对光照强度、环境温度、空气湿度、土壤湿度以及空气中CO2的浓度等数据进行实时采集处理,并且将其传输给电脑端,并对采集的信息进行二次处理。这个ZigBee 信息处理系统被分为多个子模块以此来提高处理不同端的信息的精确性——信息数据收集部分负责连接各子系统传导的信息;交互系统负责转化用户与系统指令的输入和输出;无线区域网络信息接收端负责连通网络,再通过网络系统传输各子系统需要的数据;而电源控制部分进行对各个模块启动与关闭的操作,通过这样的系统可以实现远程操作,对各节点进行自由控制也大大提升了整个系统的灵活性,这样也可以采集数据汇集节点下行输出的开启和关闭设备的指令。
通过本篇论文,实现了对监控系统三个节点的软件以及硬件设计,经过测试,证明该设计有效。
关键词:ZigBee技术;数据采集;温室环境检测

Abstract
In the process of agricultural of farming, cultivating and producing,there are many factors that limit the final yield of crops, such as light intensity, environment temperature, humidity of the air, soil moistureand CO2 concentration in the air.Thousands of years of agricultural production from ancient times to the present,these important factors affecting crop yields have not been accurately controlled,it’s all about making rough judgments based on experience.But this simply does not maximize the benefits of agricultural production,that’s why,China has always been a large agricultural country, not a strong agricultural country.
It is because of the characteristics of large volume of agriculture, but underdeveloped, this paper uses ZigBee technology to develop the greenhouse monitoring system. This system contains three nodes, which are terminal collection, control node and data collection node. Through the design of these three nodes, we can use wireless self-grouping network to collect real-time data such as light intensity, ambient temperature, air humidity, soil humidity andCO2 concentration in the air, and transmit it to the processor for performing final processing and analysis. The joining and quitting of the network as well as uploading sensor values and receiving commands are completed by the wireless communication module, acquisition of sensor data and data packet are completed by the data acquisition module,user input and system information output are completed by the human-computer interaction module,andthe detection of system power and the control of sensor power are accomplished by the power detection and control module, and the user remotely operates the node through the system configuration module. The control node can send the on or off state of the node it controls to the uplink, and can also receive the command to turn on or off the device from the downlink output of the data collection node.
Through this paper, the software and hardware design of the three nodes of the monitoring system are realized. After the test, it proves that the design is effective.
Keywords: ZigBee technology;data acquisition;greenhouse environment monitor

目 录

摘要
Abstract
1 绪论
1.1研究背景 1
1.1.1课题背景与研究意义 1
1.1.2温室系统的研究现状 2
1.1.3无线通信技术研究现状 4
1.2系统研究现状 5
1.2.1系统简介 5
1.2.2系统发展与应用 7
1.2.3系统在国内外的发展情况 7
1.3本论文课题的研究意义 9
2 无线传感器网络与ZigBee技术
2.1 无线传感网络 11
2.2 ZigBee无线通信技术 12
2.3 本课题的主要工作及安排 14
3 系统总体设计
3.1 系统整体设计方案 15
3.2 系统架构选择 16
3.2.1 总线型 16
3.2.2 GPRS型 16
3.2.3混搭型 17
3.3 终端采集与控制 18
3.3.1 终端数据采集节点 18
3.3.2 终端控制节点 18
3.4 网关设备 19
3.5后台数据库服务器设计 19
3.6信息平台 20
4 系统详细设计与实现
4.1系统硬件设计 22
4.1.1 核心板模块硬件设计 22
4.1.2终端采集节点硬件设计 22
4.1.3终端控制节点硬件设计 25
4.2 系统软件设计 27
4.2.1 下位机软件设计 27
4.2.2 ZigBee精简协议栈简介 29
4.2.3 终端采集节点软件介绍 30
4.2.4 终端控制节点设计 31
4.2.5 数据汇总节点软件设计 32
5测试结果及分析
5.1测试工具介绍 33
5.2数据格式协议 33
5.2.1下行数据包 34
5.2.2上行数据包 34
5.3数据采集及控制设备测试 35
6总结与展望
6.1总结 37
6.2展望 37
参考文献
致谢

1 绪论

1.1 研究背景
农业自古以来就在社会当中具有极高的地位,无论是广大民众还是统治阶级都极为重视农业生产,因为发达的农业可以增加粮食产量,不论何时粮食都是国民生存的根本所在,只有让大家吃饱穿暖,才能进一步地去发展科技和进行劳动,因此农业对于各行各业而言都具有重要的奠基作用。
农业对于各行各业而言都具有重要的奠基作用[1]。2007年6月,国家农业部根据我们国家农业的发展现状以及将来的发展方向,制定了《农业科技发展规划(2006-2020)》[2],希望能够推进机械在农业当中的应用。五年之后,国务院又发布了全国现代化农业发展规划(2011-2015)[3],希望能够将信息化应用到农业当中。四年之后,农业部出台的《“十三五”全国农业农村信息化发展规划》[4]提出要加快脚步促进工业和信息技术的结合从而推进农业农村现代化发展,助力农村生产力的提高,为乡村振兴提供技术支撑和保障。“十三五”规划对农业现代化提出的主要指标指出农业物联网这样的信息技术在农业当中的应用比例要进一步提高,这份规划涉及了五个大的领域,在“十三五”期间从各个领域来加速推动农业现代化,而且智慧农业作为重要的项目被着重强调[5]。
我国从事农业生产的人数是世界上屈指可数的,而我国传统农业农业的起源时间和发展的悠久历史也是其他国家所不能及的[6],这一切都是因为自古以来我国的统治阶级就深知如果不能将农业发展起来,势必会导致不能吃饱的人民们可能将会爆发内乱,从而引起战争,导致国家的政治环境和经济环境不安稳,进而甚至会威胁到统治阶级的统治的牢固程度。由此可见充足的土地和足够的粮食产量无论对于国家、民族和我们个人都有着极其重要的作用,就像曾经古代东汉末年三国时期的蜀国丞相诸葛孔明,他不仅仅是一位杰出的军事家、政治家、书法家、文学家和发明家,他还是一位对于农业领域有着突出贡献的人,他上任之后首先就是着重加强了蜀国的农业生产,在蜀国的农业经历了发展之后才从偏安一隅的川府之地变成了后来成为三足鼎立之一的强盛的蜀国。由此我们可以知道农业无论对于古代还是现代而言都具备着不可替代的作用。
由于可使用耕地不断缩减,人口数量不断攀升,所以引起了粮食不足的情况[7],如今随着这种情况愈演愈烈,中国甚至已经逐步成为了世界上粮食进口的第一大国,中国自己生产的粮食不光早已经不足以养活我们自己国家的人民群众,甚至还有了极其庞大的粮食需求的缺口的出现,而这种情况的出现是有悖于农业大国和粮食大国的名声的,这种情况是完全不应该发生的。因此中国一方面应该从根本的发展政策上重新审视农业生产问题,并且制定相对的发展战略,不然按照目前这种情况,一个拥有十几亿人口,其中几亿人口都在从事农业及其相关的专业的国家温饱问题竟然需要依赖其他国家,这其实是个非常荒谬,而且不应该出现的现状。针对这种情况的发生,十九大报告强调,“确保国家粮食安全,把中国人的饭碗牢牢端在自己手中”[8]。而就目前的情况来看,显然情况并不是很乐观,我们中国目前拥有农民的数量接近六个亿,然而中国在拥有六个亿农民的情况下,不能保证拥有富裕出来的粮食出口就算了,甚至无法保证粮食自给自足,以至于我们中国成为了世界上最大的粮食进口国[9]。这样的情况显然是极度危险的,超过国家人口总数三分之一的人民在从事农业相关的行业,国家却依然要面对巨大的粮食缺口。
与我们中国的这种情况相对的是美国,美国只有区区三百万人从事农业生产相关的行业,但是他们美国却成为了世界第一大粮食出口国[10]。这是个让人难以接受的事实,中国有着超出美国近三百倍的从事农业相关行业的人口数量,但是不光无法实现粮食出口,甚至还成为了世界上粮食缺口最大的国家。因此,中国如何能够在减小农业从业人员的工作压力的同时提高农业生产效率,在保证环境尽量不受污染的情况下提高农业生产效率,增加粮食产量就成为了目前我国需要面对的一个非常迫切的问题,所以如果能够顺利地在减小农业从业人员的工作压力的同时提高农业生产效率,在保证环境尽量不受污染的情况下提高农业生产效率,增加粮食产量将会是一项具有重大研究意义的工作。
1.2国内外研究现状与研究意义
在美国、日本以及荷兰等发达国家的智慧农业水平已经比较高了,他们的发达是比较全面的,这可以体现在各个方面,比如在温室内环境因素的控制技术和方法方面,而且他们还可以在做到对温室内环境因素做到精准控制的同时在成本上做到节约。当然任何事物的发展都是循序渐进的,不可能一蹴而就,国外发达国家智慧农业的发展同样也是如此,他们技术的发展大致可以分成三个阶段,分别为定值控制阶段、PID 控制阶段以及智能控制阶段这三个阶段[23]。
现在来讲,在智慧农业领域取得比较高的成就的依然是一些发达国家,发展中国家在智慧农业方面的研究还是较为欠缺。北美洲的美国、欧洲的荷兰以及亚洲的日本等等发达国家由于有着先进的通讯、计算机和传感器技术作为支撑,所以在智慧农业领域的发展自然是占尽先机的。从智慧农业开始起步到现在的几十年时间里,已经研究出了一些极具代表性的成果,这些成果都代表着智慧农业的突破,都是人类农业走向智能化的路上的里程碑,其中就有灌溉测控系统(美国)、荷兰的温室技术、日本的环境测控管理系统等 [25]。其中,“人工气候室”非常具有代表性,它是由美国发明的。[26]。从此,智慧农业的研究逐渐开始进入一个白热化时期,所产生的科研成果也是呈现出一个井喷的状态。比如,当时荷兰就把专家系统应用到了园艺培育当中,达成了温室的智能化和精准化控制的目的[27]。
计算机为微机的出现奠定了基础,而微机也在不断地发展当中,逐渐完善和精准,功能也越来越多样化和智能化,如今微机技术也被引入到了温室控制系统当中,使得温室系统的发展更加地科学和高效,使农业生产更加智能化,更加省时省力,极大程度地节约了人力物力,降低了经济成本,提高了生产效率[28]。使用电脑对植物的生长环境进行模拟,这样可以使得温室栽培控制系统更加地科学,增大作物产量[29]。
随着时代的发展、科学技术不断地发展以及智慧农业本身的底蕴不断地加深和智慧农业理论地不断完善还有就是智慧农业领域相关技术地不断成熟,目前在智慧农业领域理论和技术走在前列的国家已经不再致力于单因素的智慧农业研究,而是从单个方面向多个领域协调互通地研究和解决问题[30]。
当然,由于我们中国在温室种植方面起步较晚,因此在经验上的欠缺以及在技术上的不足是不太可能在短时间内弥补得上的,所以我们中国的温室种植技术至今依然和在智慧农业起步较早的国外发达国家存在着差距,有着很多的不足之处需要加强和学习。比如中国在温室种植相关法律规范和规定上面依然有着许多疏漏,在温室种植相关的物资和仪器的生产方面还是没有一个比较统一的质量标准,因此在温室种植的方方面面目前都缺少一个规范。但是随着时间的推移,我们中国在温室种植方面其实也在陆陆续续地不断取得一系列突破,比如温度、CO2浓度以及光照强度等多种因素都可以由温室监控系统控制,除此之外温室监控系统还能够对肥料和营养液等因素进行调控,这样的温室监控系统是由毛罕平教授研发出来的,毛教授来自江苏理工大学。[32],[33]。这个突破对于我们中国的温室种植技术有着非常重要的意义,这不光意味着中国温室控制技术的进步,还意味着中国在温室控制领域不再仅局限于传统的控制方式,而是正式开始了自动化的进程。在这之后,随着我国科学家的不断研究,单片机技术不断地进步,并且为温室的自动化起到了奠基的作用[34][35]。随着在科学的不断探索和研究的不断深入,Lab VIEW技术也不断地发展,而这为温室大棚温湿度解耦模糊控制监测系统也起到了非常重要的奠基作用。解耦参数的引入,模糊控制方法的采用令温室监控系统在温度以及湿度的检测和控制方面得到了加强[36]。PID为基础的温室当中的温度控制器是由岳文杰先生研制出来的。它不仅可以使温室系统的稳定性和精确性得到提高,还能使响应性以及鲁棒性得到质的飞跃[37]。同时,RBF 神经网络也可以在温室系统当中发挥重要的作用,它可以模拟以及预测温室当中的湿度,并且预测未来时间段内的湿度变化情况以及趋势,这是由许童羽等首先提出的[38]。专家系统还能够和模糊控制系统相合作,这能够充分地利用人类知识来为温室系统服务,通过推测和判断条件,能够发现作物生长过程当中出现的问题[39]。
由于我国近现代农业技术发展进程与发达国家相比还比较落后,对温室大棚管理和运行还缺乏经验。本文在此技术背景下,从我国温室系统的缺陷和不足出发,对其改善和提高提供解决方案。我国温室管理领域相关人员可以通过无线网络系统对温室大棚进行实时监控。温室大棚作为一种区域模块化系统,可以将生产区域进行灵活划分但具有一定难度和复杂性,这为ZigBee技术的运用提供了先决条件。采用ZigBee技术对温室大棚进行各节点的精细化管理,为了辅助这个技术的高效运行,收集温室内的各项数据(空气中含水量,温度以及日照强度等)成为了不可缺少的一环。工作人员能够通过各项数据反映的信息对温室管理的模式和内容进行及时的调整,也可以运用ZigBee技术实现生产和管理设备的自动化运行,预设温室运行所需的各项数据指标,进行自动管理,这不仅大幅度提升了工作效率,也减少了人工成本。由此得出,ZigBee技术适应了温室管理系统转型升级的需要。
1.3 本论文框架结构
(1)第一章首先讲述了温室大棚监控系统的研究背景以及其对拓宽生产范围的重要作用。其次本章节会将国内外对温室大棚的管理进行对比从中得出差异,对无线传感进行必要讲解再推出本文写作目的和布局构造。
(2)第二章主要目的是引出ZigBee技术,从无线通信中寻找有效的信息和经验,根据得出的信息编织出一个无线通信网络系统来对ZigBee技术进行深入的阐述和说明。
(3)第三章以无线传感系统为落脚点,利用网络的高效性和模块间相关性,构建一个系统的信息处理平台,使各部分在充分发挥自身作用的同时又服务于整体。
(4)第四章则对如何设计符合无线传感系统的软件进行说明。本章节基于软件设计的框架和过程对整个系统进行了由下位机到上位机的分解设计,首先解决机体系统的无线组网和信息传导问题;之后,分析了服务器的的软件的设计,包括SQLServer数据库和TCP传输协议的操作等,最后介绍了上位机软件的设计——编制主界面,计算系统等。
(5)第五章的主要内容是对设计的系统进行试运行,测试系统的整体运行效果,对测试结果进行分析再得出结论。
(6)第六章对整篇文章进行总结说明,对系统中存在的一些不足的部分作相关说明。

2 ZigBee无线通信技术

2.1 无线传感网络
无线传感器网络(wireless sensor networks,WSN)在当今世界的科技舞台上备受关注。因为它不仅涉及多学科、高交叉度而且又是知识高度密集,所以成为了全世界最前沿的最炙手可热的研究领域。它包含了多项最新的高科技技术,如嵌入式计算技术、传感器技术、现代网络及无线通信和分布式信息处理等。通过使用高度集成的传感器模块和控制模块,能够在各种复杂环境下实现对其进行监测、分析和适度控制等工作。通过功能各异的传感器模块采集到的数据信息以无线的方式发送,通过灵活的自组网络被传送到用户终端,这样就实现了人类渴望已久的物理世界、计算机世界以及人类世界这三元世界的高度联通的先进生活模式。
无线传感器网络技术作为一种新兴的高科技信息技术,已经被世界许多国家的军事界、工业界和学术界人士作为重要研究对象。美国开始对无线传感器网络的研究起步相当早,大约从 20 世纪 90 年代就已经开始了,并主要运用在军事上且已经大面积推广了。美国国防预先研究计划局在 2001 年的时候,在“网络嵌入式软件技术”项目的帮助下,资助了加州伯克利大学开发一种名为“Smart Dust”(智能尘土)或“Mote”的无线传感器网络开发系统。并且从那时起一直持续到现在,DARPA 每年都会投入大约几千万美元进行无线传感器网络技术的研究开发工作。与此同时,越来越多的美国许多著名公司和大学也加入了研究和开发无线传感器网络的大军。他们根据自身所拥有的优势与资源,以不用的角度与层次为起点,展开了极其深入的开发研究工作。比如加州大学的洛杉矶分校的 CENS,WINS,NES 等实验室和麻省理工学院(MIT)都无一例外的获得了 DARPA 的支持与帮助,着手于研究超低功耗的无线传感器网络工作,业界里所广泛关注的协议就是出自 MIT 的研究;还有奥本大学也同时获得了DARPA 的帮助,着手于研究关于自组织传感器网络方面的工作;另外宾汉顿大学计算机专业实验室在移动自组织网络层协议、传感器级网络系统的应用层上的独创设计等方面也做出了相当多的工作;还有州立克利夫兰大学所属的移动计算研究室在基于 IP 的移动网络及自组织网络方面结合了无线传感器网络技术等最新技术进行了大量研究工作。
我国开始对无线传感器网络的研究也相当早,不说传统意义上的传感器研究,单说现代意义上的传感器网络研究早在 1999 年中国科学院《知识创新工程试点领域方向研究》的“信息与自动化领域研究报告”中,作为该领域中的五个重大项目之一(当时的项目名称:重点地区灾害实时监测、预警和决策支持示范系统。中科学院计算技术研究所在对于 IPv6 无线传感器网络节点以及配合于IEEE802.15.4 标准并满足 ZigBee 规范的无线传感器网络等方面做了相当多的研究性工作,并且成功支持了完全自主开发的 GAINS 系列无线传感器网络节点,并同时实现了产业化。在这种趋势下越来越多的科学院校和科研组织都进入到相关研究的潮流中,如果无线传感的研究能取得突破,那么这即将为信息化和自动化技术提供诸多便利。在这股“洪流”中,以浙江大学为突出代表:浙江大学研究所设立实验室以专门从事对无线传感控制系统的研究和开发,这中间也对分系统控制法做出了强调。在国家科技政策的导向下,越来越多知名院校启动研究,比如电子科技大学,国防科技大学,清华大学等老牌科研强校,这些院校立足于该系统的整体性和相关性做出极大努力。
科技对中国特色社会主义市场经济和现代国防的贡献是毋庸置疑的。对经济而言,技术革新带来的新的生产技术和工艺能够大幅度提升我国制造业的生产效率;对国防安全而言,科技是国防实现创新的先决条件。所以,无线传感网络体系在将来中国能否实现海陆空一体化目标的过程中扮演者非常重要的角色。如果无线传感技术未来在世界范围内得到广泛应用,那么世界的整体化进程将到达一个新的高度,从而对新的局势带来机遇和挑战。
2.2 常用短距离无线网络技术的对比
ZigBee,蓝牙,Wi-Fi等信息技术的运用是当前阶段最为广泛的技术手段,下表(2-1)是对这几种技术的进行效果对比图:
表2-1 几种通信技术性能比较
Tab. 2-1 The comparison of several communication techniques
技术 传输速率 传输介质 有效物理范围 功耗 成本
ZigBee 20 〜250kbps2.4GHz150m低小
Bluetooth 1Mbps2.4GHz10m较高较大
Wi-Fi11Mbps 2.4GHz100m高大
UWB500Mbps高于2.5GHz10m较低小
IrDA16Mbps980nm红外定向1〜2低大
1、ZigBee技术
ZigBee是能够连接很多无线数传模块构成地数据传输的网络,在这个无线网络里,无线数据传输模块都可以与其他传输模块随时互相进行通信交流,这样网络节点与网络节点之间的距离就可以无限扩大。跟别的网络模式不一样的是,ZigBee网络大部分主要使用在农业、工业生产中的无线数据传输。符合ZigBee技术具有简单、使用方便、工作可靠和价格低地特点。创建移动通信网络基站在造价上就成本太高,多达千万,但ZigBee网络地每个节点的成本却不超过600元。相关性作为ZigBee技术最为突出的特点,这个特性赋予了单位网络系统既可以独立的进行信息收集和处理,也能作为一个子系统与其他子系统搭建沟通路径的能力。抛开相关性这个特性,ZigBee技术甚至能过沟通一部分无关联性的子系统,拓宽了系统构建的模块范围。
2、Bluetooth(蓝牙)
蓝牙是通过2.4G赫兹的特定频率进行短距离运作,之所以成为短距离传输技术,是因为蓝牙只能通过单体设备和特定频率接收信号,如果不满足任一条件,蓝牙就会因为频带断开而失去效用。但是,蓝牙使用范围宽泛如手机,办公设备,机械仪器等都能通过单体设备的频带连接实现交互。
3、Wi-Fi技术
Wi-Fi(WirelessFidelity)是一种无线联网技术,也是在无线局域网的范畴内,一般用来指使用了IEEE(美国电气和电子工程师协会)802.11b标准地微电子产品,其主要特点是传输速率很高、可靠性强、组网快速便捷、可移动性好、网络结构具有弹性則。Wi-Fi的兼容性也很好,釆用了和蓝牙一样的2.4GHzISM免特许频段,现在是当前无线局域网络市场地主流标准。
4、UWB技术
超宽带通信UWB(UltraWideBand)作为一种无线信息传输交互途径,能够在非常广泛的频率范围内进行工作,还拥有纳秒级的传输速度,实用性高。UWB的技术系统复杂度很低,发生出的信号功能也相对比较差,对信号不敏感,获取能力也相对较低,其使用的范围多在室内一些紧密的环境里。
通过对上述信息传输技术的介绍,综合考虑上述技术的适用范围和工作效率,ZigBee技术在其中脱颖而出,成为相较于其他技术更为适应农业温室大棚测控系统发展需要的手段。
2.3 ZigBee技术简介
ZigBee技术又被称为“紫蜂协议”,它是一种以功耗不是很高的以IEEE802.15.4标准的局域网协议为基础的无线通信技术,它的特点是功耗不高以及距离并不远[43]。而且ZigBee的协议是由四个部分组成的,分别是实际操作设备,网络传导,访问信息筛选和监控以及系统实际应用[44]。
以上系统允许部分在不同的环境下实际应用不尽相同。例如,2.4GHz频段为全世界的通用频率。就不同国家来讲,英美的适用频率分别为886M赫兹和916M赫兹。就全世界来讲,主要使用15M赫兹,在此基础上产生了16个拥有250KB左右每秒传输速度的信息通道;就美国的情况,美国通常使用速度为40KB每秒的信息通道;英国则主要使用10个20KB每秒的信息通道。通过使用不同频率减少信息干扰,虽然它们的个数、频段以及传输速率不同,但是在传输距离上它们有着一致性,都在10m到75m的范围内。ZigBee技术比其他无线通讯技术更加简单和方便,所以应用得更为广泛,具有更广阔的开发前景和开发意义。
2.3.1 ZigBee技术的主要特点
1.占用系统资源少
目前为了能够使设备带有智能性,许多区域都会采用加设另外的系统来解决智能化程度不高的问题。因为无线网络是一个巨大的信息集散平台,信息处理往往具有一定难度和复杂性,为了提高信息处理和流通的效率,需要加设一个辅助系统来帮助主系统的信息处理,这也叫做嵌入式系统设计。这个加设的系统技能提高系统允许的整体智能化程度,也能节省主系统的空间,使整个系统更具可操作性。在实际应用中,大棚的使用面积广阔,范围大,所以使用的传感器节点都需要方便小巧,精益求精。这造成了存储资源的范围变得很有限。并且ZigBee 协议所占的资源空间相对要少很多,用户可以把系统资源不占用的空间投入到其他的操作中,增强系统灵活性。
2.系统待命时间长
利用ZigBee技术设计的系统具有高续航能力,这主要是因为低能耗和低功率两个因素,但是这也限制了系统的运行效率。另外,ZigBee系统的装配难度大,管理和人工成本高,所以ZigBee系统通常需要设置于人口密度较小的地方,但是这并不影响系统的使用,因为ZigBee系统会在完成信息处理后周期性进入待机状态以此来保证系统能维持相对稳定的状态,延长使用周期。这种设计相较于普通系统更具有灵活性和实用性,一般情况下,ZigBee系统的运行时间会比普通系统多3—6月。
3.网络覆盖面广,容量大
ZigBee系统通常是实用二进制来进行模块编制和内容编写,通过二进制把ZigBee的网络地址进行转换后得到的数量是非常庞大的(长达20位数),这就成为了该系统内部储存空间几乎用之不尽的主要原因,庞大的空间呼应了“爆炸式”信息过滤的状况。但是ZigBee系统并不等于一般意义上的无线信息传输技术,因为ZigBee能够让个节点都拥有与传感器适配的能力,这意味着各节点通过传感器覆盖各个方面的信息,并不局限于影音等可交互的信息。这就要求要有一个足够打的网络系统来支撑该系统的运行。
4.无线信息可适配性强
每个单节的频率范围大概在1到100米范围内。这数字比GSM小得多,但在大多数用感应器的环境中,这数字非常大。此外,远程射频硬件能以更大的功耗为代价来实现。对于感应器节点来说,低功耗是最重要的,无线传所能传输的多远已经没有那么重要了
5.低廉的价格
现在,与ZigBee标准相匹配的相应硬件设备能大规模生产。几十亿的ZigBee感应器节点遍布世界,单块芯片的多少钱非常合理,人民币大约50元。,由于ZigBee具有很明显的优势在,ZigBee科学技术越来越受人们的关注与使用。随着ZigBee技术的快速发展该技术在各个领域都将有着非常光明的前途。
2.3.2 ZigBee无线扩展系统
节点无线扩展系统能够和ZigBee运行标准相匹配,该扩展系统能够以不同的形式存在——星间链域式扩展,网状扩展,树状扩展。
1.星间链域式扩展
星间链域式扩展又称星型拓补,在这个扩展系统中,存在一个起核心作用的协调节点,它负责向个节点传输指令和信息,同时还有多个响应节点对协调节点发出的信息做出回应,然后通过协调节点向主系统传递信息。这个扩展系统在复杂程度并不高但是实用范围比较广。

在这里插入图片描述

图2-2星型结构
Fig. 2-2 Star topology diagram
2、树状扩展
树状扩展是一种结构性的处理系统。树状扩展系统的关键部分依然是协调节点,但是在这个系统中发挥着不一样的作用——在这个系统中,协调节点以路由器为信息载体,向外进行扩展。这是与星型扩展相比的主要优势:向外扩展大幅度提升了系统的灵活性和可控性。当两个节点之间有障碍物阻挡的时候,信息无法直接通过网络通道。因为有路由器这一外部媒介存在,各节点的信息并不能进行对等传输,而是下位节点的信息必须也只能经过上位节点,所以个节点的信息传导过程会具有信息跳点式的流动方式,这也是路由器数据处理会出现延迟的主要原因之一。如2-7所示:
在这里插入图片描述

图2-3树型结构
Fig. 2-3Tree topology diagram
3、网状网络拓补
网状拓扑结构由协调器,路由器和终端节点三部分构成,与树型拓扑结构一样。该网拓扑结构具有很强的健壮性和良好的可扩展性,通过多条路线传输数据,保证了传输的靠谱性。即使出现个别链路或节点出现故障问题,也不会导致网络出现瘫痪的状态。如下图2-4所示。
在这里插入图片描述

图2-4网状拓扑结构
Fig. 2-4 Mesh topology diagram

2.3.3 协议站结构
“协议站结构”中的“协议”就体现出了该结构的主要特点即在ZigBee系统运行过程中,各节点需要与协调节点进行一个类似于签订工作协议的流程,这意味着各节点和各运行模块处理信息后要向上层模块进行反馈即下位节点与上位节点直接是一种服务与被服务的关系。ZigBee系统主要是在协议和运行标准框架下由操作系统(physical物理层),Mac网络系统组成,结构说明如下图所示:
在这里插入图片描述
图2.-5ZigBee协议架构
Fig. 2-5 Zigbee protocol stack structure

不难看出ZigBee的四层体系与其他的类似于7层的系统相比复杂程度大大降低了。从中我们能够看出:各子模块会在遵循协议的条件下运行。其中,MAC层和物理操作系统通过国际网络地址标准连接。就 physical物理层的连接对象划分,主要是媒体接入和实际管理部分,通过这两个部分为特定部分提供信息支持。相对的,MAC层也可以通过接入口向MAC层信息处理服务。接下来对每一层架构做一个简单的叙述。

1、(physical)物理层
该层次把硬件设施和无线传导器作为信息载体,为媒体接入与物理层信息传输创造了通道。在物理层中存在这一种管理实体在物理层运行中有着独特的运行结构。该管理实体虽然是物理层的一部分,但是它能够调用物理层中的各项数据,并对这些数据负责即进行处理;该管理实体会经过实体和数据处理点为物理层提供信息服务。
在这里插入图片描述

图2-3 PHY层结构图
Fig. 2-3 PHY layer reference model
2、MAC网络层
与物理层相同,MAC层也具有一个为高层信息接受点提供服务的管理实体,而这个管理实体也会对该层信息进行处理,它也会对该层两个接入点提供服务。与物理层的管理实体不同的是,系统使用者可以借助该层管理实体对该系统直接进行管理;MAC层是立足于提供管理服务的,它会针对Personal Network Information Database 即个人信息进行保护。该层结构如下图2—7所示:
在这里插入图片描述

值得一提的是,物理层与MAC层管理实体还会寻找并通过一个隐形通道系统引导管理接口和数据处理接口为系统提供服务,其中MAC层管理实体与物理层不同点是:MAC层拥有足够的权限从该层直接提取信息。

3、网络运行层
网络运行层顾名思义就是要构建起一个运行和服务框架,使个层次间形成联系,增强系统的整体性,同时还要为系统信息处理提供一些计算工具为系统运行提供保障。网络层会根据各层次实际运行的不同需要划分成两个信息元件即功能性实体——管理实体“网”和数据处理“网”,这主要是为了向各层的工作提供服务通道,提高系统相关性。NLDE—SAP即数据通道主要负责向已有信息提供传输服务;NLME—SAP即管理服务通道主要负责辅助系统的运行和管理。网络层的数据库管理与维护是同步进行的,这促进了各节点间信息的有效对接。网络层还会协调协议数据与数据处理工具的调用。
在这里插入图片描述

图2-8网络层参考模型
Fig. 2-8 Network layer reference model
4、应用框架层
最终有使用者直接操作的应用系统是由配置模块,操作模块以及支持模块构成的,使用者可以通过应用层随意选取操作对象[22]。上文提及的温室大棚测控系统的操作部分就是应用层面,结果框架说明如下图所示:
在这里插入图片描述

图2-9应用框架层结构
Fig. 2-9 Structure of application layer
2.3.4 网络设备
由于ffiEE802.15.4无线通信地标准是ZigBee协议的最底层基础,因此ZigBee网络对于IEEE802.15.4网络设备具有很强地相似性,可以认为IEEE802.15.4协议是ZigBee协议地基础,正因此,掌握协议标准是有关ZigBee系统研究的关键部分。
从设备定义出发,可以把由协议标准定义的网络系统中的网络设备从发挥的作用大小大到小划分为基本设备,协调组织设备以及单位网络协调设备三部分[23]。从设备使用效果出发,可将其划分为功能全面型设备(FullFunctionDevices)与精简功能设备RFD(ReducedFunctionDevices)两种。相较于全面型设备,功能精简型设备只能进行简单的系统处理,无法独立完成网络设置和扩展,只能与已有区域网络进行对接;另外,精简型设备外观因为外部装饰与配置较差稍有不足[24],综合比较结果来看,精简型设备实质上只是全面型设备的一种简化和低配版,所以全面型从根本上就比精简型设备具有优势。

表2-10 IEEE802.15.4网络设备分类方式
Tab. 2-10 Equipment classification m IEEE802.15.4 network
按设备定义 按设备效用
个域网协调器 全面型(FFD)
其他协调器 全面型(FFD)
普通设备 全面型或者精简型(FFD or RFD)

3系统硬件设计

3.1 系统整体设计方案
一般来讲,温室监控系统的结构一般是由传感器模块、终端设备模块,路由器、协调器、网关、服务器以及远程终端Web。其中我们使用CC2530微处理器作为ZigBee节点的核心芯片,除此之外其还采用树形网络结构,这样的结构使它具有结构简单、易自愈、易实现以及可远距离传输的特点[42]。
第一步是协调器建立网络,传感器与路由器在得到协调器节点地入网许可后方可加入ZigBee网络。传感器包括空气温度湿度传感器和光照强度传感器和二氧化碳以及土壤湿度传感器,这些传感器采集大棚内地环境数据,在经过数据处理后,把这些数据通过ZigBee无线网络发送至上层网络。远程终端Web还能够在环境不正常时控制喷洒设备、加热器、风机、二氧化碳变送器、卷帘机等终端设备来调控棚内环境状况。路由器地节点是起到中转的作用来使用的,能让较远距离的终端采集节点也能够加入网络,最终将数据发送给组织协调设备。组织设备作为系统中的协调部件,在遵循设备对接的具体协议的前提下与其他设备进行信息传导,把收集的相关信息发送至信息节点再把相关数据进行筛选分析,最后通过网络云上传存入数据库,这样远程终端Web应用就可以通过4G网络进行访问。
在这里插入图片描述

图3-1 温室监控系统整体结构示意图
Fig. 3-1 Overall structure of the greenhouse monitoring system
3.2 采集终端节点硬件设计
采集终端节点硬件电路以ZigBee核心芯片CC2530F256为主,要想充分发挥采集而来的信息的作用,就必须与各类信息收集传感器共同运转,此外,为保证采集终端在温室大棚外对环境信息的测控依然有效,因此在设计时既要使一部分终端提高距离不同的采集精确性,也要使用相应的保护措施才能够保证采集终端耐用,数据传输稳定高效。
3.2.1 采集终端节点的总体结构
光照强度、空气温度湿度、二氧化碳含量、土壤湿度传感器、路由器以及由天线模块连接地CC2530F256ZigBee芯片一起组件了采集终端节点总体结构。当传感器接收到数据之后会通过总线把数据发出给到CC2530芯片内部地8051CPU进行相应的处理,芯片RF射频模块利用连接天线将数据通过发送ZigBee无线网络,能够实际达到预期内的效果——虽然ZigBee技术功率低,有一点复杂性,但是通过无线信息收发的距离考验。取得无障碍覆盖近300米的成效就是对ZigBee技术的有力证明。除此之外,该终端还能降低电流输出速率,进一步降低能耗和运行成本。该终端硬件结构如下图所示:
在这里插入图片描述

图3-2终端节点硬件的结构
Fig. 3-2 The structure of the terminal node hardware
3.2.2CC2530芯片简介
CC2530是TI公司研发地一种主控芯片,里面包括了51单片机地内核和ZigBee的相关技术,专门针对IEEE802.15.4Zigbee技术以及RF4CE技术地实际应用。该芯片成本低、功能齐全、还能构建起稳健的节点网络网。
CC2530芯片内部所使用的是拥有较强功效的无线信息收发设备(RF),该设备的射频功率能够达到4.5dBm,RF既可以让芯片能够有序进行信息的分析处理,指令下发,也可以为识别网络地址和数据来源提供有利条件。
此CC2530芯片主要由数据,代码以及(Special Function Registe)SFR即特殊功能寄存器三部分组成。其中特殊功能寄存器在单片机8051CPU中一共有21种定义即它可以被用来存放相应元件功能的指令和状态已经数据输出环境。比如,寄存器中有负责调整运行状态的子模块,这些子模块又叫做中断优先级(系统根据引起系统中断问题的重要性,将中断源分为多个等级并对其进行排序),这些中断源在遇到被赋值的特殊情况是会优先对系统进行调整,这就有了主系统的切换。如图3-3为CC2530引脚封装图。
在这里插入图片描述

图3-3 CC2530芯片的引脚封装图
Fig. 3-3 CC2530 Pin package diagram of the chip
芯片配备8KB的低功耗静态内存和32/64/128/256KB四种不同的Flash闪存,能够为编程提供不同的需求。8KB之所以具有低功耗的特点,主要是因为它的两个构成部分——主数据空间与一个副系存储空间,这位芯片进行信息处理提供了广阔的平台。正因为SRAM具有低功耗的能力,即便在数字部分掉电之后也可以保持自身的数据不完好无损。Flash具有四种不同的形式的内存器件,与其他挥发性内存器件(如DDR,RAM)不同,闪存能够做到即使系统处于断电状态依旧可以进行信息储存,这种信息可保存性的特点保证了系统使用者对信息调用的连贯性。除此之外,flash闪存还能独立的进行信息储存,这意味着即使在缺少网络的环境下也可以长时间的保持数据形态,这个特点成为了各种便携式数据储存介质的基础。
该芯片还有一个MAC定时器,此元件主要功能是为了记录不同协议进行沟通的时间,方便数据查找。因为个元件的运行周期不同,为了使不同元件能够协调运行,MAC定时器可以对数据做精确延时处理或者接收转换不同的脉冲信号完成精准计时。
从上述文段中可以看出,CC2530芯片是一种适用性强,功能覆盖面广的低消耗芯片。本次论文所采用的型号分别是256KBFlash和CC2530F256,在低功耗需求的系统中非常适用,多种地运行模式和各种模式之间短时间的切换时间很好的保证了芯片的低消耗的需求。为了延长系统的使用周期,各种运行模式都会考虑到自身对功率和电量的实际需求量,以此为基础开展工作。其中的PM1高效处理模式只需要0.2毫安的电流就能维持系统高效运行。这极大程度上提高了系统的续航能力。
在该芯片的结构框架中,P1和P2连入底板,高速率无线射频部件(RF)负责与信号接收器进行对接,P0端一号和二号接口则复杂对接空气温湿度传感器SHT11的数据总线(DATA)和时序总线(SCK)上,P1_0和P1_0脚分别连接光照强度传感器QY-150A的数据总线和时序总线上,P0_2和P0_3脚分别连接二氧化碳传感器KCD-AN100X的5、6引脚,P0_4和P0_5脚连接土壤湿度传感器的数据总线和时序总线上,P1_7连接继电器SRD-05VDC-SL-C的IN1接收口。GND和Reset部分分别担任接地端口和复位端口的角色。与电源的连接是通过VDD接口实现的。该芯片集成电路结构如下图所示:
在这里插入图片描述

图3-4 CC2530模块电路原理图
Fig.3-4 CC2530 module circuit schematic
3.2.3 传感器的选择
温室当中的各项环境条件(空气的含水量,热量,土壤含水量和肥力,累计日照时长等)由传感器来检测并上传,由网关设备来接收。现阶段市场中流通的无线传感器类型多种多样,但是功能和原理却大不相同,综合因素下,本论文在选取传感器的时候尽量选取体积小、功耗低、有极好的防水性和放腐蚀、数据精准的传感器。
1、空气湿度与热量传感器
SHT11是一种典型的数字化空气湿度与热量感应装置,具有高精度,全面性已经运行效率高等特点。它在设计和制造过程中为了保证芯片运行的稳定性和数据的准确性,采用了特殊的电子设计工具(CMOS)。该感应器与集成在芯片中的14位信号相连,经a,DC端口后转化成数量信息。
就像汽车产业对汽车性能进行测试一样,传感器要进过精确校准才能进入市场流通。在校准过程中,校准预期标准会预存在校准信息存储器中。在反复校准后,传感器会获得更为精准的数据。该芯片虽然只有近750毫米,但是并不影响其降低功耗,SHT11封装形式适合LCC,适合表面贴装生产
技术参数:
供电:3V-5V直流电
温度感应范围:-40〜60°C
空气湿度感应范围:0〜100%
检测精度:±3%
下图为该传感器实物图:

在这里插入图片描述

图3-5 SHT11传感器
Fig. 3-5 SHT11 sensor
2、光照强度传感器
QY-150A是一个精密的光强度感应器,由高灵敏度的光电二极管组成。具有体积小,精确度高以及安装难度小的特点。来自空间中区别方向的入射光通过余弦校准器会聚到感光区域。聚集在感光区的阳光通过滤光片滤除黄光和蓝光以外的光,滤光后的可见光照射光敏二极管,电信号根据照度经过光敏二极管进行转化,数据进过芯片后进行分析处理,获取精确的光电信号,然后通过计算获得需要获取的热量值。
技术参数:
光照测量范围:0〜150000 LUX 精度:±2%
供电电压:3-5.5V
光照值(Lux) = (Klux以上输出电压-1) 74150000+ (Klux以下输出电压-1) 741000
重 量:210g
环境温度:-20〜80°C
图3-4为QY-150A高精度光照强度传感器实物图:
在这里插入图片描述

图3-6 QY-150A高精度光照强度传感器
Fig. 3-6 QY-150A High precision light intensity sensor
3 、二氧化碳传感器
二氧化碳感应器用KCD,AN100X感应器。感应器的原理是双波长非色散红外。被测气体被吸入探测空间。空间一端装有红外发射光源,另一端装有接收探测装置和滤光片。当探测气体进空间时,接受探测装置通过探测空间中的通光率获得气体浓度。
技术参数:
量程范围:0-2000ppm、0-5000ppm> 0-10000ppm
工作温度:0-50°C
耗电量:70mA (平均)
供电电压:3-5.5V
图3-5为二氧化碳传感器实物图。
在这里插入图片描述

图3-7 KCD-AN100X二氧化碳传感器
Fig. 3-7 KCD-AN100XCO2 sensor
4、 土壤湿度传感器
FDS-100型感应器被用作土壤湿度感应器,FDR频域法被用来测。根据电磁波在土壤中的传播速度,能领取单位土壤体积的含水量。方法简便,准。
技术参数:
工作频率:100MHZ 精度:±3%
测控范围:围绕主探针形成一个直径和高均为175px的圆柱体
供电电压:3—5.5V
图3-8为土壤湿度传感器实物图:
在这里插入图片描述

图3-8土壤湿度传感器
Fig. 3-8 Soil moisture sensor
3.2.4天线电路设计
本系统专门为系统使用的芯片提供了一种具有低功耗,便于配备且信号稳定的优点的天线,该天线电路工作电压为3.3V,天线匹配线路如图3,9所示。
在这里插入图片描述

图3-9天线匹配电路
Fig. 3-9 Antenna matching circuit
3.2.5 ZigBee串口
无线模块在ZigBee系统运行中发挥着促进子模块协议达成与实际运行的功能,无线模块只通过一条串口路线就能实现与CC2530芯片连接,接收每个感应器发送的所有数据,发送感应器发的所有命令。从RS485到ZigBee的无线模块与感应器连接,接收来自协调器传输的信息并进行指令交互。下图为接口实体图:

在这里插入图片描述

图3-10 ZigBee模块
Fig.3-10 ZigBee modle
如图所示,这两个模块虽然在形态和基础规格上大体一致。从2.4GHZ的射频频率与相近的工作电压来看,两者可以说是同一种设备的两个小分支,但是两者分别拥有RS458和RS232接口类型。使用者可以通过两种不同的接口类型实现数据传输速度的自主化设置,本设计采用了两种方式,一,通过测试得出其传输最大可行范围指(1600米)得出即使在最大距离的状况下也能很好的发挥作用;在电流输出环境为25毫安的状况下,也能取得200毫安的发射指标。
3.3协调器节点硬件设计
这个系统的中心协调器因其唯一性的特点而主动担任着整个网络传输系统的建设者和维护者的角色,同时也是控制系统运行的不可缺少的一环。整个无线传导系统的搭建是从协调控制设备连通电源后开始的,加入终端后,协调器随即成为指挥中心,协调各部件的配合和信息处理。系统使用者则通过控制设备完成对喷雾设备,加热器,风机,二氧化碳变送器,卷帘等各种执行机构的控制,从而实现温室监控系统的整体联动运行。
3.3.1处理器的选择
在开发协调节点的过程中,首先需要选适合的处理器,并根据先进的性能,靠谱性和所采用的技术选择C8051F340微控制器。该微控制器是一种复合型的MCU,其结果如下图所示:

在这里插入图片描述

图3-1 1C8051F340引脚图
Fig. 3-11 C8051F340pin figure
CIP,51命令集和MCS,51间没有战争。DR与普通51单片机的编程没有差别。我还能利用标准8051单片机的汇编器和常用的Keil开发环境编译器来开发单片机的软件程序。与普通8051单片机一样,也有其外围设备。有四个16位定时记数器,用于数据通讯的端口都是完整的。以SPI,I2C为例,本文之所以会选取上述微处理器的原因是,这个单机片不仅可以灵活设置信息并且该单机片的原始化设置都是通过一个特殊的函数存器SFR来实现的。位于CIP,五一命令集的8051F340在这方面更强。它拥有128字节的SFR和4352Bytes的内部构造,保证了它足够的性能。对于外围设备的拓展,CIP,五一命令集8051F340MCU拥有多个信息传输接口,这赋予了芯片非常高的灵活性。该MCU会对接收的指令进行周期性处理,这构成其与普通单片机功能的最大不同点。一个普通的MCU对绝大多数数据的处理周期只需要一到两个单位时间长度,对于特定数据会有不同的执行周期。两者关系如下图所示:
表3-12接收命令数与执行周期的关系
Tab. 3-12 Article order number and execution time
执行周期数 1 2 2/3 3 3/4 4 4/5 5 8
指令数 26 50 5 16 7 3 1 2 1
芯片靠谱工作环境的温度条件为,45,85,,支持2.7V,5.25V的电压力范围,一旦工作电源超出3.5以上的范围,就需要开启另外的电源系统来减轻运行电流负担。
本文在薄塑封四角扁平封装和四方扁平式封装两种集成电路封装方法中选取薄塑封四角扁平封装简称TQFP来说明,使用该封装方法可以有效节省成本。
由中断源构成的中断系统在单片机的设计开发中有非常重要的作用。与标准单片机相比,上述C8051F340MCU拥有近两倍于标准单片机的中断源数量(16个),数量众多的中断源很大程度上提高了中断系统设计的灵活性和可替代性。本文通过使用UART0和UART1两种中断对系统进行设计处理。其中,UART0是4号中断负责协调本元件与ZigBee模块的数据交换;UART1有一个扩展端口来进行该单机片与其他部件的信息沟通。该单机片还能根据数据类型和运行需要,在内外两种震荡电路中进行选项应用,处理器在运行过程中选择低频内部振荡电路能显著降低能耗,可有效果用于开发需要长时候上班的软件系统。
3.3.2 模块通信处理
ZigBee可以通过频率连接,向其他协调设备传输相关数据,再通过与串口P0端四号和五号接口实现向MCU的信息收发和转移。ZigBee模块还能作为独立部件与PBC板直接连接。MCU的p0.5端口与ZigBee模块B2端五号接口连接。MCU的P0.4端口与ZigBee的b2.4端口相连,即MCU串口0的TX0发引脚与ZigBee模块接收引脚相连。
在这里插入图片描述

图3-13 ZigBee模块与C8051F340单片机连接电路
Fig. 3-13 ZigBee module and C8051F340 chip dap ciecuit
MCU板块与ZigBee板块的连接是通过URAT这一连接端口实现的,在两部分获得信息传输通道后,ZigBee会把信息进行类如转出方—数据—接收方的编制,通过这样的沟通形势,MCU模块随即可知数据来自温室中的哪个节点和该节点采集到地数据。
3.3.3 控制节点的设计
控制节点的实质是利用微弱的电流对电磁阀的开与关进行调控,以此来对设备进行控制,最终达到随环境的变化而自我变化的目的。继电器,在控制电路中很常见,它独具自己的特点,能够实现对电路的独立控制,即进行打开或关闭。
该设计过程中通过运用了松乐厂的SRD,05vdc,SL,以及常见的固态继电器。继电器由常开触点以及常闭触点构成。图3-14是其物理原理图。主要技术参数如下:
(1)工作电压:5V
(2)电阻:55〜70。
(3)最大输出电压:250V
(4)最大输出端:10A
(5)正常温度范围:-40°C~+85°C
在这里插入图片描述

图3-14继电器模块实物图
Fig.3-14 Relay module
对控制节点进行操纵在一些外部执行设备中起着不可或缺的作用。一些大型电池,还有灯,相关的空调,都是主要的温室执行设备。此外的相关部件还有,例如继电器,还有控制模块,它们之间的连接完全是驱动电路在起作用,通过控制电路,达到正常运行CC2530模块的目的,避免一些驱动力较弱的状况。在图3-15中可以看到,LED1属于一种指示灯,它受继电器的状态影响,K1属于一种固态继电器,型号为SRD,05vdc,SL,C型,P1属于电源插头,电压是220V,P7属于一种光耦继电器,具体的型号为TLP521。在图中可以看到,引脚P1.7属于CC2530模块,它与IN的端口1连接。如果P1.7不接通相关的低电平,使P7被接通,接下来会有5V的电平被疏通,继电器靠在常开触点上,L1连接电源,使得一些设备如空调等连通电源,不断工作。倘若引脚存在高电平,会使电磁阀断开,所有设备不工作。
在这里插入图片描述

图3-15控制模块电路原理图
Fig. 3-15 Control module circuit schematic
3.4 电源模块的设计
在本系统中,由于CC2530芯片,8051F340单片机和天线电路2450bm15a0002芯片的工作电压力为3.3V,终端采集模块的工作电压力为5V,因此电源可直接采用220V交流电源,将220V交流电源通过通用电源适配器转化到5V直流电,再由低压稳压芯片将5V电源转化为3.3V。BL8555芯片的输出电压力范围约为0.2v,1.33v,功率转换电路如图3-16所示。
.
在这里插入图片描述

图3-16电源电路原理图
Fig.3-16 Power supply circuit schematic

3.5网关硬件设计
网关介于感知网络和传统通信网络之间的重要通道,它能实现传感网络与通讯网络之间以及不同类型网络间的合同转化,即多模式功能。具体地,由采集数据的终端节点和协调器组成的无线感应器网络连到通讯网络。此论文里的网关,只能实现这一种功能。前者是由终端节点和协调器组成的无线感应器网,用于温室环境因子的采集。传统的网是由客服器等构成的网软件。网关需要通过不同地协议连接两个不同的网络,协调器最终对数据进行接收整理。其接收到命令后,网关的作用是封装以及相应的打包,它主要是运用PL2303串行通讯协议完成该过程的,最终使用TCP,IP协议,发送得到的数据于客服器上。
大棚内多个节点的数据都需要由网关连接,需要进行的步骤就是处理数据,以及最终向网络传输。因此,需要从多角度进行分析,如其安全性及突发状况,倘若因未料到的还有未知的服务器磁盘损坏消磁的事情发生,需要对网关中的数据进行一个备份,并保存一段时候。读写和网络通讯能力,多任务处理能力,实时性,高靠谱性和丰富的储存空间成了网关必备的技能。在考虑开发平台时,必须要思考这些条件,能够确保都满足条件。所以对于网关开发,我们选择目前最新版本的树莓派4代B型。

3.5.1 树梅派简介
树莓派(英文称RaspberryPi)出生于2012年3月。树莓派的设计源于教育,想通过这样的编程以学习计算机。它的占地面积很小,只有卡片大小,属于一种微型计算机。图3-17中就是它的表象,其系统包括Linux,属于Raspbian·Wheezy。
树莓派的处理器为ARM,储存形式脱离传统大型的硬盘结构,它只使用了较小的内存芯片,具有很高的读写效率。有四种设备可用于连接键盘和鼠标。和普通电脑主板一样,树莓派也有一个一起进行网络通讯的设备,它拥有几个不同的输出端口,比如音频端口,此外还有高清视频端口。因此,它拥有很多的功能,像文字处理,还有相关的对表格编辑等,此过程仅需将键盘与显示器连接即可实现。
在这里插入图片描述

图3-17树莓派
Fig.3-17 Raspberry Pi
目前的树莓已经开发到第四代,本设计选择了树莓派的第四代型号为B型,主要的特征有以下几点:
1、博通BCM27111.5GHz四核Cortex的计算速度很快,且配以A72cpu和64位ARMv8架构趋以完美,此外该芯片还有集成GPU,大大提高了运行技巧。
2、BCM2711在Wi-Fi模块的集成上,完美无瑕,极大的有利于TCP宽带软件运行。
3、它有8GB的运行存储,保障了软件运行时能占的丰富资源。
4、两个USB2.0港口和两个USB3.0插口为协调器,方便按键,鼠标和别的外围设备的运行。
5、采用约四十个输入及输出端口,在图3-18可以看到,GPIO端口二以及四在第二章中输出合适的电压力,已经输入了直流电源,充当着协调器的成分。
6、其端口选择以太网端口,将其与互联网相连。但相应的第四代A型就做不到这样的效果,同时,值得注意的是树莓派可以配合一定的自适应网络,流量可以达到1000MHz。
7、将其与存储芯片结合,又叫做卡片电脑,与常见的电脑不同,该电脑不配设硬盘,它仅仅通过芯片进行储存,小巧且方便。并且相关的文件驱动,还有SQLite数据库运行,此外还有系统运行,都是基于存储芯片。

在这里插入图片描述

图3-18 树梅派引脚图
Fig.3-18 Raspberry Pipin figure

树莓派用5V,3A供电。启动后,可通过外部鼠标,按键,屏幕进行操作,并通过Wi,Fi或以太网接口接入网络。RaspbianDebianWheezy是树莓派的操作系统,它本质上是一个Linux的系统。支持CGC,Java,Python2.7>Python3.5等语言,支持底层操作。Raspbian,DebianWheezy系统与Linux系统一样,允许开发人员直接编写应用程序来读写USB端口,Wi-Fi模块和SD存储设备,而无需花费时间和精力来管理底层硬件驱动程序。它简单快速从而大大提高了开发效率。
3.5.2 协调器与树莓派通信
每个终端节点的把数据传到协调器之后,传至树莓派,期间需经串口连接。上一节叙述中表明了,串口UART0已经被使用,且无法再利用。所以本节通过串口1来进行协调,来中和协调器与树莓派间的联系。基于此,连接电路在图3-19所示。
在这里插入图片描述

图3-19 C8051F340单片机与树莓派连接电路
Fig. 3-19 C8051F340 chip and Raspberry Pidap ciecuit
其中C8051F340MCU存在2个串口,之一是UART0,之二为UART1。第二个串口负责输入p2.0,同时负责输出p2.1。MCU引脚号有略有不同,其中引脚三十八属于对数据进行传递,引脚三十七则是接受结果。
原因协调者通过对节点数据进行感受以及吸纳合适的数据,同时,数据自动进行分布及结合,最终形成一些十六进制的格式,比如“温室的温湿度“,还有相关的“光照强度”,以及“土壤湿度”,期间配以一些回车键以及换行符,最后经串口1,传至树莓派。
DebianWheezy,归属于Raspbian中,它是前文提及树莓派中的一种操作系统。本质上,它属于Linux系统。支持C,C,Java,Python2.7>Python3.5等语言,支持底层操作。Raspbian的DebianWheezy系统和Linux系统一样,允许开发人员直接编写应用程序来读写sriland刺刀,Wi,Fi模块和SD储存设备,而无需花费时间和精力来管理底层硬件驱动程序。它简单快速,能加速软件的开发。如今的树莓派,已经出现在生活的方方面面,例如工厂化作业,以及对智能家具的控制。
树莓派通过电压5V以及电流3A的模式确保运行。运行时,需要使用鼠标还有相关的键盘等对屏幕进行调控,选择合适的WI-FI或者快捷的以太网作为网络。但也存在这一些问题,比如当把它当做个人电脑时,占用了大量的资源,处理器上远不如现阶段所使用的平板。所以为解决此问题,可以通过平板进行远程访问,以此控制其开发,还可以快速便捷的对文档进行修改,还可以查找需要的信息。
3.5.3 PL2303串口协议通讯
本节首先简介数据的传输过程,他们使用PL2303协议,具体的负责机构是协调器,以及相关的网关,经TCP协议确认,传数据于服务器中。可见,树莓派网关使用PL2303协议,还有相关的TCP,IP合同,最终选择终端——协调器,并且选择网络层——服务器,成为开启之由。
其中,USB通讯属于PL2303协议中的一种。PL2303配以USB接口转换器,内含浓缩的TTL,它能够发送数据于USB港,最后树莓派就可以通过读取数据,以获取信息。图3-20可以看到,该设计流程图可以通过读取有用数据——USB缓冲区,从不同角度进行分析,整合后存储在SQLiteS数据库中。

在这里插入图片描述

图3-20 USB通信流程图
Fig. 3-20 USB Communication flow chart

4 系统软件设计

本章主要对软件的设计进行初步介绍,具体选择了温室环境进行模拟,通过其监测实现最终目标。软件在设计过程中又由上位软件设计,以及下位机设计组成。其中,第一部分上位机,它很重要,主要起收集数据的作用,同时它还可以发送指令,让网关感知到。第二部分下位机,具体的话又可以涉及到Z-Stack协议,它分为多个层次。可以通过分析,Z-Stack协议桟的软件体系结构,来写出一些实际存在的代码,以实现在无线网络中数据传输的目的。本章同时也对上位机软件进行了详细介绍,对温室环境中温度检测进行创建,开发了人机交互的界面,同时对系统配置,还有相关的数据显示,以及报警开关均进行介绍。
4.1 下位机软件设计
4.1.1软件开发工具介绍
该系统的软件开发软件是在瑞典开发的一种流行且应用广泛的c语言编辑器iarew。IAR开发界面可在下图4-1看到,界面经优化,对多方面的编译器,以及相关的调试器,还有文本编辑器都进行安排。现在,IAREW容纳了了35多种微处理器建造。
在这里插入图片描述

图4-1IAR开发环境界面
Fig. 4-1 IAR development environment interface
本系统以2007年ZigBee的开放协议栈(z,eiffeltower)为软件开发平台。Stack协议栈是由由美国德州器材(TI)厂开发的。它由14层目录构成,即软件层目录APP,硬件层目录HAL,MAC层目录,监控调层目录MT,合同操作系统osal,AF层目录Profile,安全层目录Services,工程配置目录Tools,,ZDO目录,MAC层目录Zmac主功能目录Z,Main输出文件目录和Output构成。协议目录结构如图4,2所示。
在这里插入图片描述

图4-2 Z-stack协议栈的结构目录
Fig. 4-2 Z-Stack protocol stack directory structure

4.1.2 Z-Stack软件架构
在Z,Stack网协议栈,在MainG函数脉。zmain目录中的C文件是程序的起点。MainG函数需要完成俩任务,一个是原始化硬件平台和系统,另一个是开始执行操作系统。下边详细简介这两项任务。
(1)系统初始化
当系统通电时,需要原始化中断,系统时钟,I,O端口,芯片电压力,堆栈,板上硬件,非易失性储存器,定时器,LED,键盘等硬件设备。原始化这些列后,操作系统将被原始化码如下:
ZSEGintmain(void)
{ osal_int_disable(INTS_ALL); //关闭所有中断
……osal_start_system(); //开始执行操作系统
}
(2)执行操作系统
Z-Stack操作系统执行流程图如图4-3所示。
在这里插入图片描述

图4-3 Z-Stack操作系统执行流程图
Fig. 4-3 Flow chart of Z-Stack operating system
整个操作系统开机后,需要执行六个任务,用户传的数据需要在每一层事件执行后,进入下一层,通过,第一层MAC层,第二层NWK层,第三阶段Hal层,第四阶段APS层,以及第五阶段ZDApp层和第六个领域UserDefined层层,最终反复循环,不断调节。
OSAL属于核心地位。因为在每次的软件开发过程中,都需要其进行运行。osal的任务多种多样,其中也包括Z-Stack的系统。它具体有任务初始化,以及任务事件处理,两种内容。
任务初始化有几个方面的内容:
1)对程序服务量进行分配,使原始化软件运行顺利;
2)将不同任务分配给各类ID,形成一些堆积回忆;
3)AF层通过注册软件,最终形成合适的软件对象;
4)升级系统服务,以提高诸如OSAL或HAL;
完成以上内容后,对以下的一些函数进行运行,例如osal,start,system()等。运行OSAL系统,它的作用是检查任务是否准备好,并且在以上函数运行的过程中,一定不能回到MainG函数中。倘若现存任务不能完成,系统就会进入低功率中,呈现以休眠模式。
(3)网络拓扑结构的设置
Z-Stack尽全力配合ZigBee协议,义无反顾的支持其网络结构,如星型(Star),以及相关的网型(Mesh),此外还有树型(Tree)。Z-Stack协议栈中宏观的选择设备,并且选择合适的网络结构。让客户在nwk_globals.h中[41],进行选择,满足用户实际需求的同时,扩宽网络层面。在本文中,运用网型网络拓扑结构,使得监控系统更加准确,利于结果得出。
网络结构中,选宏关的代码:
Controlstheoperationalmodeofnetwork
#defineNWK_MODE_STAR 0 //星型网络拓补
#defineNWK_MODE_TREE 1 //树形网络拓补
#defineNWK_MODE_MESH 2 //网形网络拓补
4.1.3无线组网与通信
(1)下位机组网,通过不断的协调,经通讯系统更新及建立,最后形成了一个庞大的参加网系统,它由路由节点,还有终端控制节点,此外还有终端采集节点构成,形成无线通讯。下位机工作顺序在下图中。
在这里插入图片描述

图4-4下位机工作序列
Fig. 4-4 Lower computer work sequence chart

1)协调器建立网络。
在建立ZigBee网络时,RS232构成了ZigBee模块,与协调器相配合。其模无线频率在赫兹上可达2,4G,此外在不同的信道带宽上超5MHz。可同时对十六个不同的台进行选择,具体编号为十一至二十六。然后设置ZigBee与无线模块的网络标志PINID,通过ZigBee网络,完成项目实施。最后配合以路由器,还有终端设备,使之形成最终的网状网络。
2)通过终端节点,以及路由节点实现对网络的连接。
当协调器对未知参数设定完成后,即RS485与ZigBee中的参数也趋于完善。参数在设置中都大同小异。值得发现的是,终端节点都必须包含RS485到ZigBee模块,终端节点的通道和PINID必须设置为与协调器相同。最后,在上网时,我必须首先向协调器供电。当协调器工作时,我能给ZigBee模块的别的地方电力。只有这样,其他ZigBee模块才能自动联机。用户能通过简编判断是否设置网络指标。终端节点的LDE1指示灯在入网前闪烁,LED1常亮在成功入网后停止闪烁。树莓派作为协调员和上位机间的数据互换的设备。在监控管理中心,用户可以使用上位机串口直接向协调器发控制发号指令,之后再协调器传递指令网络的相应节点。
本次设计采用的ZigBee无线模块有两种数据传送方式,即点对点传输和透明传输。点对点传输是指发送方在已知对方位置的情况下,按指定的格式将数据发到同一网络中的另一节点;透明传输意味着发送方发的信息与接收方接受的信息完全一样。ZigBee网络建成后,您只需将新增的ZigBee模块设置为Router。ZigBee模块通电后,它们能自动加入网络。即使Router的数量增加,也没有必要在ZigBee模块进行具体的指挥行动,所以本设计采用靠谱、透明的传输方式来传输数据。可信透明地传输是建立在透明传输地基础上。可信透明地传送具有无限数据加验证数据,传送未成功后重新上传等特征。此外,这一方法可以用来在两个方向上传输数据而不需要改变。
如果通讯协议命令暂定FC时,01916458XXXY(XX为数据传送模式,倘若设置为08)此阶段数据传送为透明式,且传输过程具有可靠性。当指令传回的内容为060708090A时,说明执行过程是对的,否则错误。
倘若终端设备相隔甚远与协调器间。与此同时,终端设备就会同路由器进行配对,路由器产生一些数据,将其传给协调器。在整个全部的过程中,路由器在期间充当着中转站的角色,它一边需要缓存终端设备传输过来的数据,另一边又同时需要转发协调器传输过来的命令,它不可或缺。
3)对来自终端设备的数据,进行调控,并且采集。
终端设备收到指令后,即刻就开始对周围的环境因子进行收集、测定。体温感应器采集节点和光强感应器通过检测,并且结合WiFi将数据发送给协调器。其中,值得注意的是,终端控制节点远远不同于采集节点,他们之间容易混淆,数据最终到达的是控制节点。
(2)通信的实现
ZigBee网络通讯机制如图4-5所示。在农产品生产过程,选择广播通讯机制更为合适,其地址为oxfff(sample,app)。地址。Shortaddr,oxffff)。理由是,广播通讯机制有着良好的特点,倘若终端设备有个别层面被损坏,也不会影响整个网络系统的不运转,这极大的提高了系统的稳定性,同时还可以极大的提高数据的真实性。网络层能够通过三种机制,以此确保通讯过程的正常进行:单播(Unicast),还有相关的组播(Multicast),另外还有广播(Broadcast)。

在这里插入图片描述

单播 组播 广播
图4-5 ZigBee网络通信机制
Fig. 4-5 Communication mechanisms of ZigBee network
APP图层项目文件示例app.eew是实现该作用地主要作用。系统通电后开始上班。第一步是完成每一个设备的原始化,包含操作系统、硬件底层合同等,之后执行osal循环任务。第二,当系统成功上网时,它开始触发一系列任务。穿越定时器的常规广播主要包括三个内容:
任务ID号SampleApp_TaskID;
周期定时事件SAMPLEAPP_SEND_PERIODIC_MSG_EVT;
周期定时事件SAMPLEAPP_SEND_PERIODIC_MSG_TIMEOUT。
SampleApp_ProcessEvent()事件处理函数中的定时器代码如下:
CaseZDO_STATE_CHANGE:
SampleApp_NWKState
终端设备和路由设备共同加入网后,所有任务都会触发ZDO,stte变更事件。这时,定时器开了。当定时器时刻到达时,触发广播循环消息例子,触发事件sampleapp,send,periodic,MSG,EVT。相应的任务是SampleApp和TaskID,因此将再次调用sampleapp和processevent()来办事件,并调用sendpiodicmessage()实现对信息的周期传递。
这样的功能,能够完全实现数据在虚拟世界的传递。SampleAppMessageMSGCB函数在其中起着不可或缺的作用,当他接收到协调器的命令后,进行数据运算,发出采集环境信息的命令,从而最后找到系统中现存的光照强度,还有温度,以及湿度等信息,实现发送到电脑一整个过程。
在ZigBee模块中LED是由PC串口操控。控制节点通过对SampleAppMessageMSGCB(MSGpkt)功能进行实行,它接收LEDSAMPLEAPPID传递的字节,同时以此来调节LED的开与关。应用层是事件处理功能。当应用层接收到串行数据(即SPIINCOMINGZAPPDATA:事件)时,将发sampleapp,processmtmessage(MSGpkt)MSG,CMD,incident,调用函数SampleApp,MessageMS,GCB(MSGpkt)。
4.2 服务器软件设计
顾名思义,服务器软件是部署在服务器上运行的软件,它为上位机提供数据。前一篇作文描写了alpine网关接收协调器发的终端节点搜集的数据,然后将这些数据传到远程服务器的SQLServs数据库,供上位机用。客服器软件在这里起着连的作用。
现在,很多企业地服务器都是由Linux系统搭配Apache的架构组成的,内部配置地数据库管理软件有很多,比如MySQL、NoSQL、MongoDB等,可是在处在实验室这种非企业性地环境下条件下,服务器并一定具有企业用地服务器那么高的性能和强大地维护能力和高昂的成本,因为微软的WindowsServer设置的Window系统符合长时间的使用习惯,并且便于人员地管理以及维护在本文中得到了使用。
本章节主要介绍基于微软.NETFramework框架以及和数据源进行交互地面向对象类库ADO.NET开发集TCPServer和SQLServer功能运行在服务器上的窗体应用程序。
4.2.1数据库设计
2019年Microsoft发布的管理系统,其中一部分与数据库的sql有着直接联系,在本文介绍中使用的是sql2008R2版。本章内容中,在其中设立一个数据库,称为GreenHouse。目录一共有六章,由本章组成,包括温室环境参数,喷头控制记录,空气湿度,土壤湿度,光照强度,温度,以及相关的用户信息,形成一个表格。
4.2.2 TCP Server程序设计
TCP Server程序通过服务器进行启动,微软在.NET框架中存在着2个各有差异的命名形式,一个是System.Net,另一个则为System.Net.Sockets。设计过程中,同上章中所设计的树莓派类似,其向网络传递的程序,与TCPClient类似,也是流套相同的。倘若使用的是UDP协议,则也可以采用报套接字的形式进行传递[37]。
在接下来的5.2节中对监听按钮进行描述,其属于一种对象,拥有着事件,通俗讲指的是,点开按钮即可引起事件的发生,通过指令执行动作。而该动作过程就是通过TCP,对数据进行采纳。其实在该过程中,还存在一系列程序,如TCP数据接收,以及相关的访问DO.NET数据库,对程序进行升级,效率较高。TCP同时通过流套接字,实现对信息的监督,数据传递完成后,访问类似于ADO.NET的数据库,具体的流程图如下。

在这里插入图片描述

图4-6 TCP Server工作流程
Fig. 4-6 TCP Server working process
(1)TCP数据采纳
微软的.NET框架为简化程序的编程,以及减少开发人员对底层的关心,他们特意选择TcpClient以及.TcpListener,2种不同的类型实现编程,利于TCP网络通信顺利进行。TcpListener类在期间起的作用就是,选择指定的对象,实现对程序的监听。客服端发送连接请求时,它能生成一个alpine对象。因此,从流程的角度来看,eiffeltower对象侦听并接收请求。当有请求时,Alpine对象会在服务器和客户端间的数据传输结束后生成,TcpListener类例子化对象不会主动结束其工作,而是会继续监控连接请求。
编程之初,首先实例化一个Tcp,Listener类的对象,用IPAddress类构造,IP地址将IP地址string转化成IPAddress事例,将其当成参数,同时也将通讯端口号加入其中,选择tcplistener暗示Tcp,Listener,最终将IP字符串,以及与此相关的通讯端口号作为实例参数来自表单中的文本框。关键代码如下:
port=Convert.IbInt32(this.textBoxCom.rIext.ToStringO);//3t本框中的端口号
IPstr=this.textBoxIP.Text.ToString();//文本框中的IP地址字符串
IPAddressipaddress=IPAddress.Parse(IPstr);〃将字符串转换IPAddress实例
TcpListenertcpListener=newTcpListener^paddress,port);//实例化TcpListener
第二步是调用例子化对象tcp,Listener的Accept,TcpClient()函数来侦听端口。一旦受到怎么创建连的请求,TcpClient对象就会用tcpclient类例子化,以从温室中的树莓派接收环境数据。关键代码如下:
TcpClienttcp=tcpListener.AcceptTcpClientO;//实例化TcpClient类
第三部分是启动网络流,实现对数据的吸纳。值得注意的是,需要通过GetStreamO方法,实现对NetworkStream对象的选择,使其实现对数据的采纳,再而通过Read方法,对其进行领取,进而读取获得。关键的代码是:
Networkstreamns=tcp.GetStreamO;
intintReceiveLength=ns.Read(btServerReceive,0,btServerReceive.Length);
第四部在接收完成后关闭TCP套接字。
(2)ADO .NET数据库访问
ADO .NET是与同时用的面向对象类库CO.NET企业与数据源传递的源头。其通过一定的关系,通过建立面和表之间的数据,建立模板(37)。实现sql数据源访问的过程。
数据在经传递后进行接受,最终经ADO.NET储存于数据库中,步骤如下:
第一步,建立连接,该过程实现的是数据库与数据源建立联系,使用SqlConnectiori设定出合适的链接对象,“SqlConnectioncon=newSqlConnection(”DataSource=NEWMI;InitialCatalog=GreenHouse;uid=sa;pwd=sjtumi!863”);”,括号内的参数是服务器主机名和数据库名称以及验证密码。
第二步是例子化SqlCommand对象,“sqlcommandcmd,newsqlcommand(insert,SQL,con)”。这行代码中括号中的参数是用来执行特定数据库操作的SQL语录,con是在上一步中创建的数据库页面。例如,要在温室info表中插一行数据,语录如下:
insertSQL”INSERTINTOgreenhouse_info(airtemper,airhum,landhum,light,conductance,time,nodes_id)”;
insertSQL+="VALUES(”;
insertSQL+=””+airtemper+”,”+””+airhum+”,”+””+landhum+”,”+”+light+”,”+””+Con+”,“+”GETDATE()”+”,”+nodes_id+””+”)”;
第三步则是通过实施号令,具体是通过开启链接完成的,代码为:
con.Open();
cmd.ExecuteNonQuery();
第四步,完成整个访问过程,实现对链接的关上,代码为:
con.close();
值得注意的是,执行完查询语句后,ADO.NET査询后要建立新的数据集,实现存在DataSet对象,以此进行保存,能够返回原始界面。代码如下:
StringstrCmd="select*fromgreenhouse_infoorderbytimeASC”;
SqlConnectioncon=newSqlConnection(“DataSource=NEWMI;InitialCatalog=GreenHouse;uid=sa;pwd=sjtumi!863”);
SqlCommandcmd=newSqlCommand(strCmd,con);
con.Open();
DataSetds=newDataSet();//通过一个实例,说明清楚数据集对象,以此来保存能够返回的数据SqlDataAdaptersda=newSqlDataAdapter(cmd);// 通过一个实例,说明桥接器的类似对象sda.Fill(ds);//桥接器选择合适的执行命令,通过选择,以此将得到的数据进行补充dataGridViewl.DataSource=ds.Tables[0].DefaultView;
con.Close();

4.3 上位机软件设计
4.3.1 登陆界面设计

在温室控制系统的设计中,上位机监视中心软件设计的开发环境是VisualStudio2013,能较好地设计出人机界面良好,功能实用完整的监视器平台。为了保护系统的安全和方便管理和系统维护,系统还设计了登陆界面。用户在输了入正确的账户和相密码之后就会登录到这个页面,才能进入监控系统,以此实现安全的管控机制,在图4-4中可以看到,密码输入时进行了保护。在设计过程中,使用一定的步骤:(1)打开VC页面,选择性的添加Edit控件,选择两个,同时对控件进行属性的设置,具体是m,Usemame以及相关的m,password。(2)对管理员表进行建立,这就是book,admin。(3),完成MFCADO(4)连数据源并输入相应的功能程序,完成登陆页面的设计。
在这里插入图片描述

图4-7 密码保护界面
Fig.4-7 Password protection interfece
4.3.1 监控界面设计
主界面的设计其实是重中之重,它在上位机监控中扮演着重要角色。其设计过程具体为:开启软件后等待两秒,进入一个管理界面——为系统安全层面。使用者通过注册,以及确认自己的用户名及密码,输入确定后即可来到主界面。而后,经指令传输使得开启各节点连接。最终,界面上能够显示一些环境的参数,可进行实时的检测,经变化,最终呈现出直观的图表样式。可对数据进行文档的保存,日后可查阅。
图4-8中完全的呈现了上位机软件多种多样的不同功能。软件系统有四个功能,同时它也由四个大的方面构成。对数据管理的过程,内含显示,还有相关的查询功能。数据保留于sql数据库中。上位机通过Internet提取sql数据库数据,使数据管理模块发挥作用,以便于査看的定期分析。各个节点的参数及相关的阈值也会在控件中明确的标出。监控模块也存在很多的功能,诸如对数据进行收集,还能对图表进行做出,以及遇突发状况的报警。它可以自动获取信息,并且还能让人从直观层面看到不同环境下信息的改变,在屏幕上不断闪动带有感叹号的图标,提醒使用者其环境的变化,即将超过阈值。此外系统管理还具体包括对用户,以及密码的管理,相应的配备帮助功能。期间,它还可以通过对重点客户登录短信进行保存,防止其因病毒入侵,信息泄露。倘若有客户密码输入错误,软件直接会闪退。参数设定主要是通过设定合适的报警阈值,以及必要时进行电话的拨打以提示。软件同时还具有很好的适应性,能够因不同地区的变化而进行阈值变化设定,完全能够通用于所有场合,能选择不同的数据通讯方式,体现了系统的灵活性。
在这里插入图片描述

图4-8上位机软件功能图
Fig.4-8 PC software function chart

数据端口即通过对数据进行汲取,从串口中获得。设置端口号,以及相关的波特率从串口处进行改变,从参数层面设定阈值,实现全方位把控。其中设定波特率为三万八千四百,此状态能够实现对一些参数信息,以及网络地址的获取,它们均由终端节点带来。可以保存信息于sql数据库,利于今后的翻阅,以及多角度分析。上位机软件在其中的功能,可以具体分为显示数据,以及利用图表对数据进行构建,此外还有实现对数据的保留,并且最终发出控制于终端节点中。用户能够随时得到想要的信息,于上位机软件中,并且选择性的进行保留。接下来的图4-9对上位机软件监控界面进行描绘。
在这里插入图片描述

图4-9上位机软件监控界面
Fig.4-9 Host computer software monitoring interface

4.3.2阀值设置程序设计
阈值设置界面由四部分构成,第一部分是空气的温度以及对应的湿度,第二部分是光照的充足程度,第三部分是土壤温湿度,第四部分是二氧化碳的浓度。倘若这些因素的检测值远高于正常普通的农作物最适的生长阈值,设备就会传送信号,对周围的例如空调等设备进行开启,来调节环境参数,将其拉回合适的层面。倘若极限阈值被超出,说明农作物以及不能够回归正常生长,此时就会在屏幕上报警,告知用户,让其进行必要的方式来对环境进行调控。
在整个系统设置的过程中,对于编程语言进行了选择,最终选取了两种语言——HTML语言以及PHP语言。其中,HTML语言,主要用其对静态网页进行编写,使得十二个阈值进行显示,比如土壤温度上限,以及湿度下限。此外,还做出了专属的动态交换程序,专门针对浓度最高值以及光照的最高值。另外的,对于PHP语言,主要用其将设置的阈值进行不同程度的插入,期间需要使用sql数据进行配合,方便之后不同程度的调用及更改。具体的操作过程为:研发人员在静态网页中对数据进行编写,用户只需在其中进行一些环境阈值的设定,设定完成后进行保存,系统就会启动已设定好的PHP程序,保存为nipper。具体的阈值设置流程如下图:
在这里插入图片描述

图4-10阈值设置流程图
Fig.4-10 Threshold setting flow chart
HTML主要程序如下:

空气温度上限: 空气温度下限:

图4-11风机程序流程图
Fig.4-11 Fan program flow chart

大棚中的温度实时的被监控着,具体是温室内感应器的功劳。感应器将得到的数据保存于sql数据库。另一方面,系统阈值还将存在另一个sql数据库中。倘若室内温度远高于阈值,系统就会发送命令给继电器,继电器进而实现对电扇的开启,通过电扇促进周围空气的流动,使周围空气降温。且电扇运行越久,大棚内温度越低。当温度低于设定阈值的百分之二十时,向继电器发送指令,从而关闭风扇。
(2)系统手动控制
本系统的手动控制主要是通过Web游览器对网页上的外设进行控制,实现对温室内执行器的远控。单击网页上的“电扇开机”按钮时,风扇将立即启动。单击风扇关按钮时,风扇将关掉。当战争发生时,自动控制系统将一起失灵。
利用通用网关接口公共网关接口实现服务器与Web游览器的交互,利用C语言编写alpine程序。当账户点击网站上的“开始”或“关”按钮时,能驱动继电器遥控终端节点。主继电器驱动继电器。controlhtml和control。C如下所示:
relay.c:
int led_open()
{
realy_config = ioremap(GPNCON,4);
writel(Oxl 0000,realy_config);
realy_data = ioremap(GPNDAT,4);
}
long relay_ioctl()
(
switch(cmd) (
unsigned tmp;
case 0:
case 1:
if (arg > 4) (
return -EINVAL;
}
tmp = readl(relay_data);
tmp &= ~(1 « (8 + arg));
tmp 1= ((!cmd) « (8 + arg));
writel(tmp, realy_data);
default: return -EINVAL;
}
control.html:

卷帘机 启动关闭 风机 启动闭 加热器 启动^ 闭 喷洒设备 启动

5 测试结果及分析

5.1 下位机、树莓派网关测试
在图5-1中可以看到:与树莓派网关相连的监控设备,它能自动的监控大棚内的作物,科学智能的实现对其的调控。
在这里插入图片描述

图5-1协调器与树莓派网关实物图
Fig.5-1 Coordinater and Raspberry Pi gateway picture of real products
协调器以及相关的树莓派网关都有着重要的作用:协调器,负责对大棚内环境信息的收集,并且选择数据传递于树莓派网关,期间主要使用的是PL2303模块。另一方面,网关的作用就是对前文传输来的数据进行接收,并将其传递于服务器上,期间用到了TCP协议。服务器就负责接收数据,同时贮存合适的数据于数据库中——SQLServer。
接下来对上述的功能来测试,连接好网络。测试过程中,倘若网关能够接收并出现数据,同时,服务器能够接收从网关传送而来的数据,且能够在数据库中找到,就说明此次测试有效。
首先,开启釆集相关的电源,接下来数据就会自动传输给协调器。在大棚的各个位置均设置不同的终端节点。

其次,打开协调器以及网关的电源,对于树莓派网关的接通过程中用VNCServer,图5-2中展示了接收程序的设置参数,具体可以设“Port”为“/dev/ttyUSBO”,设置波特率为9600,其它为默认参数,点右下角的确定,可以映入眼帘的是一个显示窗口图5-3,它对数据进行显示描述,此状态下说明接收成功。
在这里插入图片描述

图 5-2 接收程序
Fig.5-2The receiving application
在这里插入图片描述

图5-3数据接收成功
Fig.5-3 Data received successfully

5.2服务器、上位机软件测试
第一步,打开软件以及TCP发送程序,选择确定的IP地址,以及相应正确的通讯端口号,用鼠标轻击“开始监听”选项,与此同时对登录树莓派电脑远程的键 盘上的“F5”运行程序,然后打开上位机浏览器网址进入登录界面,登录成功后来到主界面来显示温室环境信息,同时在温室内使用电子温度计记录数据和网页上显示的数据进行对比,测得信息如下:
表5-4温度对照表
Table5-4 Temperature table
时间 11:00 11:05 11:10 11:15 11:20 11:25 11:30 11:35 11:40 11:45
测量值(°C) 18.1 18.1 18.2 18.1 18.2 18.2 18.3 18.3 18.4 18.4
显示值(°C) 18.0 18.0 18.1 18.1 18.0 18.2 18.2 18.3 18.3 18.4
误差(°C) 0.1 0.1 0.1 0 0.2 0 0.1 0 0.1 0
从表5-4的具体数值可以看到,现场测量值和网络显示值并无显著差异,误差都保持在零点一到零点二之间,有的甚至不存在误差,这一点表明,网页上显示的数据完全具有可信度,利用Web实时检测室内温度已经成为了可能,可以完全的进行现阶段大范围的运用。
为了验证通过Web浏览器可以远程控制温室内的终端设备,首先通过Web浏览器远程启动温室设备,然后去温室现场确认设备是否已经全部启动,经验证,确实已启动运行。
经分析可以得出,该系统已经完全可以监控温室中温度的变化,能够满足客户的使用需求,且系统容易操作,能够适合所有人的观看,能够做到真正的方便快捷。但不足之处在于其运用的范围还略窄,仍需不断进行测试。

6 总结与展望

6.1 总结
我国在温室调控领域的创新能力和应用能力较弱,使得我们国家在温室调控技术领域处于落后位置,一些温室测控技术的引进也只是治标不治本[59]。所以目前来讲最为重要的就是中国要尽快培养出我们属于我们自己国家的科技人才,从而开发出真正适合中国自己的温室调控系统。
随着时代的进步、科技的发展以及计算机技术和农业种植技术的不断取得突破,各个行业都在向着科技化和智能化迈进,农业领域尤为急迫,因为现如今这个时代,土地资源以及水资源等显得越来越珍贵,所以我们新世纪的人需要摒弃旧时代里低效的生产方式,只有这样才能为人类生存质量的提高做出贡献,这是因为传统的粗放式农业种植模式无法满足对于现阶段有机蔬菜和粮食的生产的需要,一方面因为传统模式生产效率低下导致的经济效益低下,另一方面因为传统的生产模式较为松散,生产模式不够集约化。未来的农业发展方向一定会向着远程控制、系统多因子检测调控以及系统智能化的方向发展,因此以ZigBee为基础的调控模式具有非常大的现实意义。
本论文通过文献查阅以及实际设计,完成了大致四点的任务:
1.以ZigBee技术为依据,结合目前农业形势,进行论文的设计方案的制定。
2.设计了传感器采集结点、数据汇集节点以及控制节点等,并且调试后证明其合
格。
3.利用树梅派网关系统和服务器中的SQLServer数据库与硬件合作可以达到设计当中的预期目标。
4.经过长期以来的不断调试与检测,证实了该系统的稳定性与可靠性。

6.2展望
我在进行“基于ZigBee的温室环境监控系统”这个课题的毕业设计的研究过程当中收获颇丰,首先我针对传感层以及应用层方面查阅了大量资料,自己也进行了多次实验,最终得到了自己还比较满意的成绩。当然我现在的这个设计还存在许多不足,还有很多地方需要改进,很多细节上的东西需要再进行标准化。
我觉得在整个系统的算法上还不够完善,还应该继续进行探索。另外在远程调控方面我认为还需要大量的实验来验证远程调控的可靠性,最后在PC端的操作界面上我认为还应该再花些时间进行优化,使之有更好的用户体验。

参考文献

[1]董树功. 战略性新兴产业的形成与培育研究[D].南开大学,2012:8-9.
[2]朱世桂. 中国农业科技体制百年变迁研究[D].南京农业大学,2012:54-59.
[3]刘牧. 当代中国农村扶贫开发战略研究[D].吉林大学,2016:34-36.
[4]温芳芳. 我国政府数据开放的政策体系构建研究[D].武汉大学,2019:56-58.
[5]丁亮. 中国农业信息化与农业现代化协调发展研究[D].西北农林科技大学,2016:23-30.
[6]何建新. 城市化进程中农村转移劳动力的配置结构与配置效率研究[D].华中农业大学,2014:18-22.
[7]孙宝民. 基于国内粮食安全的中国粮食进出口战略研究[D].武汉理工大学,2012:3-7
[8]李崇光.确保国家粮食安全把中国人的饭碗牢牢端在自己手中[J].农业经济与管理,2017(05):8-9.
[9]刘金海. 集体产权变迁中的国家、集体与农民[D].华中师范大学,2003:1-6
[10]薄英男, 郭辉, 张学军, 刘宇, 杨相飞, 盛会, 陈恒峰. 浅谈温室环境监控系统的现状及发展趋势[J]. 新疆农机化, 2016(05):37-40.
[11]孙忠富, 马浚诚, 褚金翔, 杜克明, 郑飞翔. 智慧农业技术助推农业创新发展, 引领农业新未来[J]. 蔬菜, 2017(04):1-8.
[12]Qian Z H. Internet of Things-oriented Wireless Sensor Networks Review. Journal of Electronics & Information Technology, 2013, 35(1):215-227.
[13]张智夫. 面向物联网的无线传感器网络综述[J]. 电脑知识与技术, 2016,12(06): 202-203.
[14]侯卫平, 钟苏丽, 包君. 基于Zigbee蔬菜大棚温湿度远程监控系统的研究设计[J]. 中国农机化学报, 2014, 35(04):196-207.
[15]李金. 基于物联网的农田灌溉系统设计[D]. 安徽理工大学, 2017:22-26.
[16]包汉斌. 基于单片机的日光温室远程监控系统设计[D]. 沈阳农业大学, 2017:4-8.
[17]师丽娟. 中外农业工程学科发展比较研究[D].中国农业大学,2016:3-6.
[18]李瑾, 郭美荣, 高亮亮. 农业物联网技术应用及创新发展策略[J]. 农业工程学报, 2015, 31 (S2): 200-209.
[19]Skees, Jerry R. & Barnett, Barry J. & Hartell, Jason G., 2006. "Innovations in Government Responses to Catastrophic Risk Sharing for Agriculture in Developing Countries,"2006 Annual Meeting, August 12-18, 2006, Queensland, Australia25548, International Association of Agricultural Economists.
[20]华玉鹏. 基于Zigbee及3G网络的智能家居监控系统研究[D].安徽理工大学,2014:34-40.
[21]季永权. 基于ZigBee无线传感网络的温室智能监控系统的研究与应用[D].浙江农林大学,2018:21-24.
[22]李淑霞. 复杂信息环境下MES若干关键技术研究[D].华中科技大学,2004:10-15.
[23]薛洁. 模糊自调整二自由度PID控制器及在磨矿分级中的应用[D].昆明理工大学,2002:21-26.
[24]程文锋. 基于WSN的嵌入式温室监控系统相关控制问题的研究[D].浙江大学,2011:5-8.
[25]周益明. 基于无线传感器网络的温室群监测与控制系统的关键技术研究与实现[D].浙江大学,2009:12-16.
[26]甘圣昊. 基于无线传感器网络的人工气候室监控系统研究与实现[D].南京邮电大学,2013:20-23.
[27]刘永华. 温室精准灌溉施肥系统关键技术研究[D].南京农业大学,2015:34-40.
[28]周亮亮. 温室PLC模糊灌溉施肥控制系统研究[D].昆明理工大学,2013:19-21.
[29]张军. 温室环境系统智能集成建模与智能集成节能优化控制[D].上海大学,2013:25-30.
[30]任端阳. 我国农业知识产权与智慧农业发展对策研究[D].中国科学技术大学,2017:27-30.
[31]丁晓蕾. 20世纪中国蔬菜科技发展研究[D].南京农业大学,2008:23-30.
[32]谭静芳, 刘成勋. 浅谈温室自动控制技术的发展概况[J]. 农业装备技术, 2005(05): 21-23.
[33]李萍萍, 毛罕平, 王多辉, 谢明岗, 陈庆芳. 智能温室综合环境因子控制的技术效果及合理的环境参数研究[J]. 农业工程学报, 1998, 14(3):197-201.
[34]汪永斌, 吕昂, 孙荣高, 应日高, 严旬庆, 施已平. 温室群全数字式温度和湿度综合控制系统[J]. 农业机械学报, 2002(05): 71-74.
[35]董乔雪, 王一鸣. 温室计算机分布式自动控制系统的开发[J]. 农业工程学报, 2002(04): 94-97.
[36]卢佩, 刘效勇. 基于LabVIEW的温室大棚温、湿度解耦模糊控制监测系统设计与实现[J]. 山东农业大学学报(自然科学版), 2012, 43(01): 124-128.
[37]岳文杰, 谢守勇, 陈翀, 李少华. 基于模糊PID的温室温度控制器设计与仿真[J]. 农机化研究, 2014, 36(04): 194-197.
[38]许童羽, 王泷, 张晓博, 陈春玲, 须晖, 周云成. RBF神经网络在北方日光温室湿度模拟预测中的应用[J]. 沈阳农业大学学报, 2014, 45(06): 726-730.
[39]吴晓辰. 温室栽培专家系统关键技术研究[D]. 天津理工大学, 2013:20-25.
[40]黄建勇. 我国农业科技项目管理研究[D].福建农林大学,2005:30-35.
[41]张潜. 温室环境测控系统的适用性研究与实现[D].浙江大学,2009:13-16.
[42]史作锋. ZigBee技术在无线传感器网络中的研究与应用[D].武汉科技大学,2009:12-15.
[43]LEEDARSON; LEEDARSON Transitions to New Role within the Zigbee Alliance[J]. Journal of Technology,2020.
[44]胡怡. 基于ZigBee无线传输的牵引变电所线路夹件无线测温系统设计[D].西安理工大学,2019:8-12.
[45]胡鹏飞. 基于Zigbee协议的无线网络软硬件研究与设计[D].电子科技大学,2012:4-7.
[46]吴清芳. 基于ASP.NET的网页设计精品课程网络教学系统的设计与实现[D].中国海洋大学,2011:6-9.
[47]刘怀亮. 基于Web Services的网络化制造若干关键技术研究[D].西安电子科技大学,2003:2-6.
[48]刘有才, 刘增良. 模糊专家系统原理与设计[M]. 北京航空航天大学出版社, 1995.
[49]孙艳红. 无线传感器网络在农田温湿度信息采集中的构建与应用[D].河南农业大学,2010:24-28.
[50]吴欢欢. 基于Web的智能路灯监控软件的设计与实现[D].杭州电子科技大学,2013:21-24.
[51]王君. 基于模糊控制策略的温室远程智能控制系统的研究[D].吉林大学,2015:16-19.
[52]王江峰. 基于ZigBee无线传感网络的实现[D].济南大学,2010:21-26.
[53]苏芳. 基于物联网的多元可视化色选设备服务平台研究[D].合肥工业大学,2019:12-16.
[54]彭勇刚. 模糊控制工程应用若干问题研究[D].浙江大学,2008:24-30.
[55]谭彦华. B样条函数在模糊系统中的应用[D].大连理工大学,2013:5-8.
[56]周兵. 基于ZigBee和模糊PID技术的温室灌溉系统的设计与研究[D].昆明理工大学,2014:35-40.
[57]刘怡葳. 基于符号学的全3D-MMORPG用户界面设计[D].哈尔滨工程大学,2017:12-16.
[58]谭志君. 基于多变量控制的智能温室控制系统[D]. 东华大学, 2015:18-22.

致谢

三年时光飞速闪过,作为研究生的我马上要毕业了,又开心又不舍,这3年里,时常往返在沈阳通往大连的列车上,本科毕业在沈阳找到了工作,曾经大三的机缘巧合准备考研就像在昨天一样,而报考的农业信息还又跟我的本科很相似,一个熟悉的老朋友,现在毕业论文顺利写完,要非常感谢我的研究生导师老师,从去年3月份选论文题目开始到题目的确定,导师提供了很大帮助,让我确定了论文方向,后来论文雏形确定传给老师,老师给我提出很多宝贵意见,一步一步地完成了我的论文最终稿。
其次要感谢我的高中同学及大学同学,给我提供了很多相关信息,我的家人朋友都为了帮助我有更多的学习时间,帮我做了很多时间,非常感谢。最后想说我会努力成为学校的骄傲。
最后最要感谢的是母校老师的耐心指导,指出了我论文的不足,通过老师们的指导使我的论文更加的完整,谢谢老师们。

  • 26
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值