论文部分内容阅读
摘 要:针对当前温室监控领域现状,设计了一种基于无线传感器网络的温室环境信息無线监控系统。介绍了该系统的总体结构,并分别阐述了监控节点、网关节点和上位机系统三个层次的软硬件设计与实现。经在园区温室中实际应用,证明该系统综合性能显著优于传统温室监控系统。
关键词:温室监控;无线传感器网络;ZigBee
中图分类号:TP273+.5 文献标识号:A 文章编号:1001-4942(2012)10-0019-06
温室是一个相对封闭的环境,其自我调节能力有限。为满足农业生产的要求,需要对温室各项环境参数进行人为调控,以便创造一个更加适合作物生长的环境。建立温室监控系统,对温室环境信息进行监测和控制,成为实现温室生产自动化和高效化的关键手段。传统的温室监控系统基于有线通信方式,存在诸如布线复杂、维护困难、传感器节点不能灵活部署等一系列问题,在一定程度上限制了温室监控系统的普及应用。随着现代信息技术的快速发展,WiFi、蓝牙、UWB、RFID、ZigBee等多种无线通信技术相继出现。其中,WiFi、蓝牙等由于成本高、功耗大等缺点,无法在温室监控领域大规模推广应用;而基于ZigBee的无线传感器网络作为一种全新的信息获取技术和处理技术,具有节点规模大、体积小、成本低、自组网等特点,在农业环境监测领域具有广阔的应用前景。
本研究针对当前温室环境监控系统存在的问题和不足,设计了一种低功耗、低成本、组网灵活、人机界面友好、可方便进行现场和远程管理的温室环境信息无线监控系统,并进行了成功应用。
1 系统总体设计
1.1 系统需求分析
温室环境具有昼夜温差大、空气湿度大、气体交换能力差、光照强度弱、土壤酸性强等特点,温室内种植作物种类较多且呈生长动态变化,监测面积大、监测参数多。此外,温室生产对监控系统的总体应用成本和系统可靠性也比较敏感。通过调查分析,当前大多数温室监控对环境参数的采集需求集中在空气温湿度、土壤温湿度、光照强度、CO2浓度6项因子,除此之外,少数温室还需要采集营养液EC值、pH值以及室外天气因子等信息;传感器节点数量应可随意增减,并可根据作物生长、种类更替或温室空间结构变化等的要求随时改变自身位置而不影响系统的正常运行;系统应界面直观、分析全面、使用方便,且应用成本较低等。
1.2 系统总体结构
结合温室监控系统的特点和上述功能需求,本研究将无线传感器网络技术、ZigBee技术和嵌入式技术有机结合,设计了基于ZigBee无线传感器网络的温室监控系统。整个系统的层次结构如图1所示。
系统总体上由监控节点、网关节点、上位机系统三层组成。监控节点包括传感器节点和执行器节点,部署在温室监控区域,并通过ZigBee协议自动组建统一的无线传感器网络。各传感器节点将实时采集的温室环境数据以多跳路由方式汇集到网关节点,各执行器节点实时接收由网关节点发送来的控制命令,并控制风机等执行机构。网关节点可通过串口方式实现本地通信,也可通过以太网、GPRS等方式实现远程通信,为监测数据和控制数据的上传下达提供支持。上位机系统提供用户操作界面,实现用户与系统的管理交互操作。
2 监控节点设计
2.1 节点硬件设计
监控节点是构成温室监控系统的基础,是承载无线传感器网络的信息感知、执行控制及网络功能的基本单元。按照任务分工的不同,监控节点分为传感器节点和执行器节点两种。
2.1.1 传感器节点 传感器节点硬件设计的核心是微处理器芯片。节点微处理器在无线收发模块的协作下完成数据采集、数据处理、无线通信等功能。本研究设计的无线传感器节点硬件结构如图2所示。节点的硬件设计重点考虑了低成本、低功耗、稳定、可靠等因素。
(1)CC2530:综合考虑成本与性能等因素,选择集微处理器模块和无线收发模块于一体的单芯片解决方案CC2530。CC2530是由美国TI公司推出的用于IEEE802.15.4和ZigBee应用的片上系统,也是目前众多ZigBee设备产品中表现最为出众的微处理器之一。其主要特点如下:片内集成增强型高速8051内核,支持最新ZigBee2007 PRO协议;支持2.0~3.6 V供电区间,具有3种电源管理模式:唤醒模式0.2 mA、睡眠模式1 μA、中断模式0.4 μA,具有超低功耗的特点;高密度集成化电路。基于CC2530设计的节点只需极少的外围电路即可实现数据的采集及发送,极大地提高了系统的可靠性并降低了系统功耗。
(2)传感器:在传感器选择方面,要求具备较高的精度及较低的功耗。本设计共采用了5种传感器,其技术参数分别为:SHT11数字温湿度传感器,检测电流0.5 mA,待机电流0.3 μA,温度精度±0.5℃,湿度精度±3.5%RH,接口为I2C总线;ISL29010数字光强传感器,检测电流为0.25 mA,待机电流0.1 μA,测量精度±50 lx,接口为I2C总线;H550数字型CO2传感器,工作电流15 mA,精度为±30 mg/L,接口为I2C总线;SLST1-5数字型土壤温度传感器,测量电流1.5 mA,待机电流1 μA,测量精度±0.5℃,接口为单总线;FDS100模拟型土壤湿度传感器,工作电流15 mA,精度小于等于3%,输出为模拟信号。上述传感器中,除FDS100模拟型土壤湿度传感器外,其余均可挂接在I2C数据总线上。
2.1.2 执行器节点 执行器节点可根据上位机的控制指令对温室内的风机、遮阳帘等设备进行开关控制。执行器节点包含了驱动器电路,但不包含传感器电路,除此以外,执行器节点与传感器节点的硬件结构大致相同。执行器节点的驱动电路主要用于控制与执行机构相连的电磁阀等开关设备,可输出多路高低电平控制信号。数据通讯采用主从方式。
2.2 节点软件设计 本研究中传感器节点的片内程序基于Z-Stack协议栈开发,开发环境为IAR7.51A。Z-Stack是TI公司于2007年4月推出的ZigBee协议栈,由于全面支持ZigBee2006与ZigBee PRO特性集,并符合最新智能能源规范,得到了业界的普遍认可和广泛应用。该协议栈中提供了一个名为操作系统抽象层(OSAL)的协议栈调度程序。对于开发者而言,除了能够看到这个调度程序外,其它任何协议栈操作的具体实现细节都被封装在库代码中。在进行具体的应用开发时,通过调用协议栈提供的API函数接口即可完成相应操作,如网络设备初始化、配置网络、启动网络、发送采集数据、接收控制命令等,实现分布在多个温室中的无线监控节点的自组网络。此外,在节点软件开发中,为了进一步降低节点功耗,设计了灵活方便、可动态配置的定时采集数据、定时休眠及唤醒等功能。
3 网关节点设计
3.1 网关节点硬件设计
网关节点是实现无线传感器网络与外部通信网络之间协议转换的关键设备。它不仅具备数据传输功能,还具备设备管理功能,用户通过网关节点可以管理底层的各监控节点,了解各节点的相关信息,并实现远程控制。本研究在进行网关节点设计时,遵循了模块化的设计思想,将网关系统分为数据汇集模块、处理/存储模块、接入模块和供电模块,如图所示。
本设计基于S3C2416核心板,建立了无线传感器网络网关节点的硬件平台。网关节点硬件结构如图3所示。
3.1.1 数据汇集模块 即无线传感器网络中的协调器节点,实现温室环境数据的采集和汇聚。在本设计中,数据汇集模块和处理/存储模块之间的接口类型采用UART方式,通过串口进行数据通信。
3.1.2 处理/存储模块 是网关节点的核心模块。S3C2416核心板集成了基于ARM926EJ内核的Samsung S3C2416XH-40处理器,主频400 MHz,另外还集成了512MB DDR2 SDRAM和128MB Nand Flash,并提供了丰富的外围设备接口,从而最大程度地减少了系统开发成本,非常适合嵌入式设备高性价比、低功耗的需要。
3.1.3 接入模块 主要采用以太网的方式将网关接入外部网络。核心板集成了SMSC公司的本地高速以太网芯片LAN9220,在操作系统支持下可实现以太网数据传输。网络变压器采用HR601680,其主要作用是匹配阻抗、增强信号以及实现电压隔离等。另外,GPRS作为可选方式,采用Siemens公司的MC37I模块。
3.1.4 供电模块 负责网关节点的电源供给。此处设计的电源模块兼有热插拔和电压转换功能。供电方式包括市电、太阳能、蓄电池等。
3.2 网关软件平台设计
Linux是一种免费的、快速高效的操作系统,以代码开放、功能强大而又易于移植成为嵌入式操作新兴力量。嵌入式Linux是按照嵌入式操作系统的要求设计的一种小型操作系统,由一个内核以及一些根据需要进行定制的系统模块组成,其内核很小,同时具有多任务多进程的特征,非常适合于移植到嵌入式系统中去。本设计即是在S3C2416目标平台上移植了Linux2.6内核及相关驱动,并使用开源的LwIP协议栈替代了Linux系统的TCP/IP协议栈。之后,在嵌入式Linux和LwIP的基础上进行了网关节点应用层程序的设计。主要实现两个主要功能:通过Web服务器对网关节点进行配置;通过Modbus/TCP协议将Modbus串行通信链路与以太网相连。
3.2.1 Web服务器功能设计 在网关配置模式下,网关节点将作为Web服务器,而客户机则是任意一台使用交叉线与網关RJ45接口相连的计算机。
网关复位启动后,操作系统将启动Web服务。客户机通过浏览器向网关发出HTTP的GET方法的请求。网关收到该请求后对请求消息中的方法字段进行判断。若是GET方法,则表示是第一次请求,将固化在片外Flash中的Web页面和网关的配置信息返回给客户机。用户完成参数配置后点击提交,客户机向网关发出POST方法的请求。网关擦除片外Flash中原有的配置信息,然后写入新的信息,从而保证网关的配置在复位后不会丢失,配置信息在网关重启后生效。
3.2.2 Modbus/TCP协议转换功能设计 网关复位启动后,首先进行一系列初始化工作,最后启动Modbus服务器,以实现Modbus/TCP帧与串行链路中的Modbus RTU帧之间的转发。当客户机进行查询时,首先会向网关的502端口发起连接请求,网关执行中断服务程序,唤醒处于等待状态的Modbus服务器,并与之建立TCP连接,客户机随之发送一个Modbus/TCP请求帧并等待响应。网关对帧进行分析处理,最后生成一个Modbus RTU格式的查询帧并发送到串行链路中去。之后若收到串行链路上的RTU响应帧,则将该帧封装成Modbus/TCP应答帧,发送给以太网的客户机并断开连接。
4 上位机系统设计
上位机系统是用户进行温室日常管理所实际操作的软件平台。本设计在VS.NET开发环境下,基于SQL Server数据库和C#语言编写了温室环境信息监测系统管理软件,用以完成传感器节点管理和温室环境数据管理。主要功能如下:
(1)实时监测:用户可以集中查看温室现场最新的环境参数,以及现场风机、水泵等控制设备的运行状况,并可在当前界面进行控制调节,方便了用户的操作。
(2)历史数据:所有历史数据均存储于数据库中,用户可以通过多种方式对监测的数据进行查询,也可以将某时间段的历史数据生成曲线图,更加直观地反映温室环境的变化。
(3)设备控制:包括自动控制和手动控制两种模式。在手动模式下,用户可远程控制风机等设备的开关。在自动模式下,可根据环境监测参数自动调节风机等设备的开关。 (4)报警管理:用户可以定义多级报警条件,并可查看所有已设报警的详细信息。在报警条件中,用户可指定报警时的操作,如启动警报器、打开风机等设备以及发送报警短信通知等。
(5)节点管理:包括节点ID、节点位置、传感器类型及参数、采样周期、运行状态、更新时间等属性的显示和配置。用户可随时掌握现场所有监控节点的工作状态,及时发现设备故障。
5 系统应用
5.1 节点部署方案
本研究设计的系统在济南现代农业科技示范园的1#温室内进行了应用。在该温室蔬菜种植区内共放置了12个节点,其中传感器节点10个,执行器节点2个。此外,在温室管理区布置了1个网关节点。空气温湿度传感器、光照强度传感器、CO2传感器均和相应的传感器节点集成于一体,而土壤温湿度传感器则分别通过电缆与传感器节点相连,另一端插入土壤约8 cm,电缆长度1.5~2.0 m。各传感器节点通过固定支杆或悬绳倒挂的方式置于监测位置,节点离地高度一般为1.2 m左右。传感器节点均采用1节1#电池供电,执行器节点及网关节点采用直流供电。
5.2 系统应用情况
部署节点之间的通信距离平均约为20 m左右,监控节点与网关节点的最近距离约在100 m左右。经安装运行,网关启动后,节点绑定和自组织网络建立平均所需时间小于1 min。传感器节点采样频率设置方案为:空气温湿度2 min,土壤温湿度10 min,光照强度3 min,CO2浓度30 min。各节点在完成数据采集、发送之后,将自动进入休眠状态,直至下一个采样周期唤醒。经实际测试,系统可支持传感器节点的动态调整,新增节点、撤销节点或临时改变节点的位置时,整个无线传感器网络的运行没有受到影响。在上位机系统中,能够实时接收和显示由传感器节点采集来的温湿度、光照强度、CO2浓度等环境数据,并且可以查看各节点的实时运行状态。当采集的环境参数超过报警阈值时,若控制模式设置为自动控制的情况下,可根据报警处理规则自动启动相应的执行机构,实现温室环境的自动调控。
6 结语
本研究在调查当前温室环境的特点、应用需求以及分析现有监测系统存在问题的基础上,基于无线传感器网络和嵌入式技术,设计开发了一种基于无线传感器网络的温室环境信息无线监控系统。该系统能够实现传感器节点快速自组网以及对各种溫室环境因子的实时采集、传输、显示,并可根据监测情况对相应的执行机构进行控制。通过网关节点系统和上位机系统可实现对各种传感器节点和温室环境数据的有效管理。系统具有低成本、低功耗、无需布线、组网灵活、人机界面友好等优点,很好地克服了传统温室监控系统存在的问题。该系统在农业示范园区进行了实际应用并取得良好效果,表明系统总体上技术成熟、性能可靠、适应性强,具有较高的应用价值和广阔的推广前景。
参考文献:
[1]张瑞瑞,赵春江,陈立平,等.农田信息采集无线传感器网络节点设计[J].农业工程学报,2009,25(11):213-217.
[2]刘 卉,汪懋华,王跃宣,等.基于无线传感器网络的农田土壤温湿度监测系统的设计与开发[J].吉林大学学报,2008,38(3):604-608.
[3]郭文川,程寒杰,李瑞明,等.基于无线传感器网络的温室环境信息监测系统[J].农业机械学报,2010,41(7):181-185.
[4]杨志勇,王卫星.无线传感器网络节点电源系统设计[J].通信电源技术,2008,25(6):63-64.
[5]张荣标,谷国栋,冯友兵,等.基于IEEE802.15.4的温室无线监控系统的通信实现[J].农业机械学报,2008,39(8):119-122.
[6]崔逊学,赵 湛,王 成.无线传感器网络的领域应用与设计技术[M].北京:国防工业出版社,2009.
[7]张瑞瑞,陈立平,郭建华,等.农田土壤监测无线传感器网络通信平台[J].农业工程学报,2008,24(增2):81-84.
[8]张 杰,曹卫华,吴 敏,等.基于S3C2410的Linux移植[J].微机发展,2005,6:142-144.
[9]孙 辉,陆松年,杨树堂.基于Linux和S3C2410的嵌入式Web Server的研究与实现[J].计算机应用与软件,2007,2:134-136.
[10]张 桂,金国强,李 辉.基于ARM平台Modbus RTU协议的研究与实现[J].电力科学与工程,2011,1:23-27.
[11]黄智伟,邓月明,王 彦.ARM9嵌入式系统设计基础教程[M].北京:北京航空航天大学出版社,2008.
[12]李文仲,段朝玉.ZigBee2007/PRO协议栈实验与实践[M].北京:北京航空航天大学出版社,2009.
[13]许洪华,刘 科.基于Modbus协议的ZigBee/工业以太网网关设计[J].微计算机信息,2009,17:281-283.
[14]赵慧然,石 磊,张 坤.基于ZigBee技术的物联网网关设计[J].微计算机信息,2012,4:62-63.
[15]甘 勇,王 华,常亚军,等.基于ARM平台的ZigBee网关设计[J].通信技术,2009,42(1):199-201. 山 东 农 业 科 学 2012,44(10):25~29,33
关键词:温室监控;无线传感器网络;ZigBee
中图分类号:TP273+.5 文献标识号:A 文章编号:1001-4942(2012)10-0019-06
温室是一个相对封闭的环境,其自我调节能力有限。为满足农业生产的要求,需要对温室各项环境参数进行人为调控,以便创造一个更加适合作物生长的环境。建立温室监控系统,对温室环境信息进行监测和控制,成为实现温室生产自动化和高效化的关键手段。传统的温室监控系统基于有线通信方式,存在诸如布线复杂、维护困难、传感器节点不能灵活部署等一系列问题,在一定程度上限制了温室监控系统的普及应用。随着现代信息技术的快速发展,WiFi、蓝牙、UWB、RFID、ZigBee等多种无线通信技术相继出现。其中,WiFi、蓝牙等由于成本高、功耗大等缺点,无法在温室监控领域大规模推广应用;而基于ZigBee的无线传感器网络作为一种全新的信息获取技术和处理技术,具有节点规模大、体积小、成本低、自组网等特点,在农业环境监测领域具有广阔的应用前景。
本研究针对当前温室环境监控系统存在的问题和不足,设计了一种低功耗、低成本、组网灵活、人机界面友好、可方便进行现场和远程管理的温室环境信息无线监控系统,并进行了成功应用。
1 系统总体设计
1.1 系统需求分析
温室环境具有昼夜温差大、空气湿度大、气体交换能力差、光照强度弱、土壤酸性强等特点,温室内种植作物种类较多且呈生长动态变化,监测面积大、监测参数多。此外,温室生产对监控系统的总体应用成本和系统可靠性也比较敏感。通过调查分析,当前大多数温室监控对环境参数的采集需求集中在空气温湿度、土壤温湿度、光照强度、CO2浓度6项因子,除此之外,少数温室还需要采集营养液EC值、pH值以及室外天气因子等信息;传感器节点数量应可随意增减,并可根据作物生长、种类更替或温室空间结构变化等的要求随时改变自身位置而不影响系统的正常运行;系统应界面直观、分析全面、使用方便,且应用成本较低等。
1.2 系统总体结构
结合温室监控系统的特点和上述功能需求,本研究将无线传感器网络技术、ZigBee技术和嵌入式技术有机结合,设计了基于ZigBee无线传感器网络的温室监控系统。整个系统的层次结构如图1所示。
系统总体上由监控节点、网关节点、上位机系统三层组成。监控节点包括传感器节点和执行器节点,部署在温室监控区域,并通过ZigBee协议自动组建统一的无线传感器网络。各传感器节点将实时采集的温室环境数据以多跳路由方式汇集到网关节点,各执行器节点实时接收由网关节点发送来的控制命令,并控制风机等执行机构。网关节点可通过串口方式实现本地通信,也可通过以太网、GPRS等方式实现远程通信,为监测数据和控制数据的上传下达提供支持。上位机系统提供用户操作界面,实现用户与系统的管理交互操作。
2 监控节点设计
2.1 节点硬件设计
监控节点是构成温室监控系统的基础,是承载无线传感器网络的信息感知、执行控制及网络功能的基本单元。按照任务分工的不同,监控节点分为传感器节点和执行器节点两种。
2.1.1 传感器节点 传感器节点硬件设计的核心是微处理器芯片。节点微处理器在无线收发模块的协作下完成数据采集、数据处理、无线通信等功能。本研究设计的无线传感器节点硬件结构如图2所示。节点的硬件设计重点考虑了低成本、低功耗、稳定、可靠等因素。
(1)CC2530:综合考虑成本与性能等因素,选择集微处理器模块和无线收发模块于一体的单芯片解决方案CC2530。CC2530是由美国TI公司推出的用于IEEE802.15.4和ZigBee应用的片上系统,也是目前众多ZigBee设备产品中表现最为出众的微处理器之一。其主要特点如下:片内集成增强型高速8051内核,支持最新ZigBee2007 PRO协议;支持2.0~3.6 V供电区间,具有3种电源管理模式:唤醒模式0.2 mA、睡眠模式1 μA、中断模式0.4 μA,具有超低功耗的特点;高密度集成化电路。基于CC2530设计的节点只需极少的外围电路即可实现数据的采集及发送,极大地提高了系统的可靠性并降低了系统功耗。
(2)传感器:在传感器选择方面,要求具备较高的精度及较低的功耗。本设计共采用了5种传感器,其技术参数分别为:SHT11数字温湿度传感器,检测电流0.5 mA,待机电流0.3 μA,温度精度±0.5℃,湿度精度±3.5%RH,接口为I2C总线;ISL29010数字光强传感器,检测电流为0.25 mA,待机电流0.1 μA,测量精度±50 lx,接口为I2C总线;H550数字型CO2传感器,工作电流15 mA,精度为±30 mg/L,接口为I2C总线;SLST1-5数字型土壤温度传感器,测量电流1.5 mA,待机电流1 μA,测量精度±0.5℃,接口为单总线;FDS100模拟型土壤湿度传感器,工作电流15 mA,精度小于等于3%,输出为模拟信号。上述传感器中,除FDS100模拟型土壤湿度传感器外,其余均可挂接在I2C数据总线上。
2.1.2 执行器节点 执行器节点可根据上位机的控制指令对温室内的风机、遮阳帘等设备进行开关控制。执行器节点包含了驱动器电路,但不包含传感器电路,除此以外,执行器节点与传感器节点的硬件结构大致相同。执行器节点的驱动电路主要用于控制与执行机构相连的电磁阀等开关设备,可输出多路高低电平控制信号。数据通讯采用主从方式。
2.2 节点软件设计 本研究中传感器节点的片内程序基于Z-Stack协议栈开发,开发环境为IAR7.51A。Z-Stack是TI公司于2007年4月推出的ZigBee协议栈,由于全面支持ZigBee2006与ZigBee PRO特性集,并符合最新智能能源规范,得到了业界的普遍认可和广泛应用。该协议栈中提供了一个名为操作系统抽象层(OSAL)的协议栈调度程序。对于开发者而言,除了能够看到这个调度程序外,其它任何协议栈操作的具体实现细节都被封装在库代码中。在进行具体的应用开发时,通过调用协议栈提供的API函数接口即可完成相应操作,如网络设备初始化、配置网络、启动网络、发送采集数据、接收控制命令等,实现分布在多个温室中的无线监控节点的自组网络。此外,在节点软件开发中,为了进一步降低节点功耗,设计了灵活方便、可动态配置的定时采集数据、定时休眠及唤醒等功能。
3 网关节点设计
3.1 网关节点硬件设计
网关节点是实现无线传感器网络与外部通信网络之间协议转换的关键设备。它不仅具备数据传输功能,还具备设备管理功能,用户通过网关节点可以管理底层的各监控节点,了解各节点的相关信息,并实现远程控制。本研究在进行网关节点设计时,遵循了模块化的设计思想,将网关系统分为数据汇集模块、处理/存储模块、接入模块和供电模块,如图所示。
本设计基于S3C2416核心板,建立了无线传感器网络网关节点的硬件平台。网关节点硬件结构如图3所示。
3.1.1 数据汇集模块 即无线传感器网络中的协调器节点,实现温室环境数据的采集和汇聚。在本设计中,数据汇集模块和处理/存储模块之间的接口类型采用UART方式,通过串口进行数据通信。
3.1.2 处理/存储模块 是网关节点的核心模块。S3C2416核心板集成了基于ARM926EJ内核的Samsung S3C2416XH-40处理器,主频400 MHz,另外还集成了512MB DDR2 SDRAM和128MB Nand Flash,并提供了丰富的外围设备接口,从而最大程度地减少了系统开发成本,非常适合嵌入式设备高性价比、低功耗的需要。
3.1.3 接入模块 主要采用以太网的方式将网关接入外部网络。核心板集成了SMSC公司的本地高速以太网芯片LAN9220,在操作系统支持下可实现以太网数据传输。网络变压器采用HR601680,其主要作用是匹配阻抗、增强信号以及实现电压隔离等。另外,GPRS作为可选方式,采用Siemens公司的MC37I模块。
3.1.4 供电模块 负责网关节点的电源供给。此处设计的电源模块兼有热插拔和电压转换功能。供电方式包括市电、太阳能、蓄电池等。
3.2 网关软件平台设计
Linux是一种免费的、快速高效的操作系统,以代码开放、功能强大而又易于移植成为嵌入式操作新兴力量。嵌入式Linux是按照嵌入式操作系统的要求设计的一种小型操作系统,由一个内核以及一些根据需要进行定制的系统模块组成,其内核很小,同时具有多任务多进程的特征,非常适合于移植到嵌入式系统中去。本设计即是在S3C2416目标平台上移植了Linux2.6内核及相关驱动,并使用开源的LwIP协议栈替代了Linux系统的TCP/IP协议栈。之后,在嵌入式Linux和LwIP的基础上进行了网关节点应用层程序的设计。主要实现两个主要功能:通过Web服务器对网关节点进行配置;通过Modbus/TCP协议将Modbus串行通信链路与以太网相连。
3.2.1 Web服务器功能设计 在网关配置模式下,网关节点将作为Web服务器,而客户机则是任意一台使用交叉线与網关RJ45接口相连的计算机。
网关复位启动后,操作系统将启动Web服务。客户机通过浏览器向网关发出HTTP的GET方法的请求。网关收到该请求后对请求消息中的方法字段进行判断。若是GET方法,则表示是第一次请求,将固化在片外Flash中的Web页面和网关的配置信息返回给客户机。用户完成参数配置后点击提交,客户机向网关发出POST方法的请求。网关擦除片外Flash中原有的配置信息,然后写入新的信息,从而保证网关的配置在复位后不会丢失,配置信息在网关重启后生效。
3.2.2 Modbus/TCP协议转换功能设计 网关复位启动后,首先进行一系列初始化工作,最后启动Modbus服务器,以实现Modbus/TCP帧与串行链路中的Modbus RTU帧之间的转发。当客户机进行查询时,首先会向网关的502端口发起连接请求,网关执行中断服务程序,唤醒处于等待状态的Modbus服务器,并与之建立TCP连接,客户机随之发送一个Modbus/TCP请求帧并等待响应。网关对帧进行分析处理,最后生成一个Modbus RTU格式的查询帧并发送到串行链路中去。之后若收到串行链路上的RTU响应帧,则将该帧封装成Modbus/TCP应答帧,发送给以太网的客户机并断开连接。
4 上位机系统设计
上位机系统是用户进行温室日常管理所实际操作的软件平台。本设计在VS.NET开发环境下,基于SQL Server数据库和C#语言编写了温室环境信息监测系统管理软件,用以完成传感器节点管理和温室环境数据管理。主要功能如下:
(1)实时监测:用户可以集中查看温室现场最新的环境参数,以及现场风机、水泵等控制设备的运行状况,并可在当前界面进行控制调节,方便了用户的操作。
(2)历史数据:所有历史数据均存储于数据库中,用户可以通过多种方式对监测的数据进行查询,也可以将某时间段的历史数据生成曲线图,更加直观地反映温室环境的变化。
(3)设备控制:包括自动控制和手动控制两种模式。在手动模式下,用户可远程控制风机等设备的开关。在自动模式下,可根据环境监测参数自动调节风机等设备的开关。 (4)报警管理:用户可以定义多级报警条件,并可查看所有已设报警的详细信息。在报警条件中,用户可指定报警时的操作,如启动警报器、打开风机等设备以及发送报警短信通知等。
(5)节点管理:包括节点ID、节点位置、传感器类型及参数、采样周期、运行状态、更新时间等属性的显示和配置。用户可随时掌握现场所有监控节点的工作状态,及时发现设备故障。
5 系统应用
5.1 节点部署方案
本研究设计的系统在济南现代农业科技示范园的1#温室内进行了应用。在该温室蔬菜种植区内共放置了12个节点,其中传感器节点10个,执行器节点2个。此外,在温室管理区布置了1个网关节点。空气温湿度传感器、光照强度传感器、CO2传感器均和相应的传感器节点集成于一体,而土壤温湿度传感器则分别通过电缆与传感器节点相连,另一端插入土壤约8 cm,电缆长度1.5~2.0 m。各传感器节点通过固定支杆或悬绳倒挂的方式置于监测位置,节点离地高度一般为1.2 m左右。传感器节点均采用1节1#电池供电,执行器节点及网关节点采用直流供电。
5.2 系统应用情况
部署节点之间的通信距离平均约为20 m左右,监控节点与网关节点的最近距离约在100 m左右。经安装运行,网关启动后,节点绑定和自组织网络建立平均所需时间小于1 min。传感器节点采样频率设置方案为:空气温湿度2 min,土壤温湿度10 min,光照强度3 min,CO2浓度30 min。各节点在完成数据采集、发送之后,将自动进入休眠状态,直至下一个采样周期唤醒。经实际测试,系统可支持传感器节点的动态调整,新增节点、撤销节点或临时改变节点的位置时,整个无线传感器网络的运行没有受到影响。在上位机系统中,能够实时接收和显示由传感器节点采集来的温湿度、光照强度、CO2浓度等环境数据,并且可以查看各节点的实时运行状态。当采集的环境参数超过报警阈值时,若控制模式设置为自动控制的情况下,可根据报警处理规则自动启动相应的执行机构,实现温室环境的自动调控。
6 结语
本研究在调查当前温室环境的特点、应用需求以及分析现有监测系统存在问题的基础上,基于无线传感器网络和嵌入式技术,设计开发了一种基于无线传感器网络的温室环境信息无线监控系统。该系统能够实现传感器节点快速自组网以及对各种溫室环境因子的实时采集、传输、显示,并可根据监测情况对相应的执行机构进行控制。通过网关节点系统和上位机系统可实现对各种传感器节点和温室环境数据的有效管理。系统具有低成本、低功耗、无需布线、组网灵活、人机界面友好等优点,很好地克服了传统温室监控系统存在的问题。该系统在农业示范园区进行了实际应用并取得良好效果,表明系统总体上技术成熟、性能可靠、适应性强,具有较高的应用价值和广阔的推广前景。
参考文献:
[1]张瑞瑞,赵春江,陈立平,等.农田信息采集无线传感器网络节点设计[J].农业工程学报,2009,25(11):213-217.
[2]刘 卉,汪懋华,王跃宣,等.基于无线传感器网络的农田土壤温湿度监测系统的设计与开发[J].吉林大学学报,2008,38(3):604-608.
[3]郭文川,程寒杰,李瑞明,等.基于无线传感器网络的温室环境信息监测系统[J].农业机械学报,2010,41(7):181-185.
[4]杨志勇,王卫星.无线传感器网络节点电源系统设计[J].通信电源技术,2008,25(6):63-64.
[5]张荣标,谷国栋,冯友兵,等.基于IEEE802.15.4的温室无线监控系统的通信实现[J].农业机械学报,2008,39(8):119-122.
[6]崔逊学,赵 湛,王 成.无线传感器网络的领域应用与设计技术[M].北京:国防工业出版社,2009.
[7]张瑞瑞,陈立平,郭建华,等.农田土壤监测无线传感器网络通信平台[J].农业工程学报,2008,24(增2):81-84.
[8]张 杰,曹卫华,吴 敏,等.基于S3C2410的Linux移植[J].微机发展,2005,6:142-144.
[9]孙 辉,陆松年,杨树堂.基于Linux和S3C2410的嵌入式Web Server的研究与实现[J].计算机应用与软件,2007,2:134-136.
[10]张 桂,金国强,李 辉.基于ARM平台Modbus RTU协议的研究与实现[J].电力科学与工程,2011,1:23-27.
[11]黄智伟,邓月明,王 彦.ARM9嵌入式系统设计基础教程[M].北京:北京航空航天大学出版社,2008.
[12]李文仲,段朝玉.ZigBee2007/PRO协议栈实验与实践[M].北京:北京航空航天大学出版社,2009.
[13]许洪华,刘 科.基于Modbus协议的ZigBee/工业以太网网关设计[J].微计算机信息,2009,17:281-283.
[14]赵慧然,石 磊,张 坤.基于ZigBee技术的物联网网关设计[J].微计算机信息,2012,4:62-63.
[15]甘 勇,王 华,常亚军,等.基于ARM平台的ZigBee网关设计[J].通信技术,2009,42(1):199-201. 山 东 农 业 科 学 2012,44(10):25~29,33