kaiyun官方注册
您所在的位置: 首页> 嵌入式技术> 设计应用> 基于PSoC的葡萄大棚远程监测系统
基于PSoC的葡萄大棚远程监测系统
2015年微型机与应用第16期
杨彦中,杨 义,韩 芳,谢锡冬,许培培
(东华大学 信息科学与技术学院,上海 201620)
摘要:针对葡萄大棚种植栽培的需要,提出了一种基于可编程片上系统的葡萄大棚远程监测系统。该系统中工作节点与数据汇聚节点都基于可编程片上系统实现,并可根据具体使用需求灵活配置节点外设及内核模块。系统可对土壤温湿度、环境温湿度、日光辐照等葡萄大棚内种植参数进行采集,并可实现基本的大棚机电操作控制功能。还讨论了基于JSP技术实现上位机监测控制功能用户端的方法。该系统具有使用灵活、功能伸缩性好、通用化程度高、配置便捷与使用方便等特点,可望为葡萄大棚栽培提供较为方便的工程实践支持。
Abstract:
Key words :

摘 要: 针对葡萄大棚种植栽培的需要,提出了一种基于可编程片上系统的葡萄大棚远程监测系统。该系统中工作节点与数据汇聚节点都基于可编程片上系统实现,并可根据具体使用需求灵活配置节点外设及内核模块。系统可对土壤温湿度、环境温湿度、日光辐照等葡萄大棚内种植参数进行采集,并可实现基本的大棚机电操作控制功能。还讨论了基于JSP技术实现上位机监测控制功能用户端的方法。该系统具有使用灵活、功能伸缩性好、通用化程度高、配置便捷与使用方便等特点,可望为葡萄大棚栽培提供较为方便的工程实践支持。

关键词嵌入式系统智能农业;可编程片上系统;ZigBee

0 引言

  近年来,精细化农业种植技术在我国得到了快速的发展。通过精细化农业种植技术不仅可以在较大程度上提高农作物的产量,还能有效改善农产品的品质,提高农业种植收益。精细化农业种植的重点是要实现对种植过程的精细化管控,无线传感器网络技术的发展为这一需求提供了有力的保障[1-4]。可编程片上系统(Programmable System on Chip,PSoC)在低成本、高集成度的无线传感器网络节点设计方面有其独到的优势[5-6]。本文提出了一种基于PSoC的葡萄大棚远程管理系统。通过采用PSoC技术,使节点具有较低的成本、较高的集成度、较强的使用灵活性与可扩展性,从而适应葡萄大棚节点布设密度高、采样数据多样、功能变化频繁及成本约束大等特点。另外结合JSP技术,方便用户通过上位机对大棚进行管理。

1 系统总体结构

  本系统由工作节点、数据汇聚节点和上位机组成。系统中工作节点与数据汇聚节点都采用PSoC架构设计,系统无线通信方式基于ZigBee透传模块。由于PSoC内置MCU、ADC、运放、多种通信接口、实时时钟及对液晶显示的支持等可通过软件灵活配置的功能,这使得节点可以实现非常多样化的设计。工作节点负责对葡萄大棚内种植参数的采集及大棚控制操作。葡萄大棚内种植参数包括土壤温湿度、环境温湿度、日光辐照等。而大棚控制操作主要是控制水泵和电机从而实现灌溉与遮光等棚内管控功能。每一个工作节点可以根据其具体的应用情况通过对PSoC内部模块的软件设定实现功能适配。数据汇聚节点作为连接工作节点与上位机之间的通道,负责上位机控制信息的下达与工作节点数据向上位机的汇聚。汇聚节点可以根据其地理位置情况决定是否携带一个独立的子网。数据汇聚节点也可以根据具体需求被赋予部分大棚监测与控制功能。工作节点与数据汇聚节点使用太阳能供电方式。上位机负责系统的日常管控,并为使用者提供简洁明晰的人机交互界面。在数据传输中,系统使用可变长度的容器用于承载监测数据与控制信息。上位机使用固定周期时序访问各工作节点及数据汇聚节点。

2 系统硬件设计

  由于PSoC具有较强的配置灵活性,易于实现一板多用,因此节点在设计中采用通用化设计,即工作节点与数据汇聚节点采用相同的硬件设计。在具体的硬件设计中,预留扩展接口,并通过对PSoC内核与板载元件的配置灵活调整节点功能。具体设计中,PSoC芯片选取Cypress公司生产、TQFP-100封装的CY8C3866AXI-040芯片。该芯片功能丰富,适合进行高集成度的设计。其内部集成了最高工作频率可达67 MHz的8051MCU内核,并具有可以根据用户需求灵活配置的62个GPIO、8个特别输入/输出(SIO)及两个USBIO。其内部还具有24个基于可编程逻辑器件(PLD)的通用数字模块。另外其具有的模块化高精度ADC及可编程放大器等资源对实现系统功能也十分宝贵[7]。

002.jpg

  系统硬件框如图1所示。设计中CY8C3866AXI-040芯片的20与21号管脚分别作为SWDIO与SWDCK功能使用,用于连接MiniProg 3编程器进行烧写。PSoC在42号管脚与43号管脚之间接24 MHz的无源晶振作为系统工作时钟,55与56号管脚间接入32.768 kHz晶振为PSoC内部的实时时钟提供参考。系统通过PSoC Creator 3.1环境进行开发。设计中对模拟监测量的采集选用了两个内置的Delta-Sigma ADC(ADC_DelSig),其精度设定为20 bit。每一个Delta-Sigma ADC输入端利用运放模块(Opamp)构建电压跟随器用以提高采样效果,配置时可直接通过内部引线将运放模块配置为单端输入跟随器。而通过在该模块对应的PSoC管脚处对跳线与电阻进行设定,还可将其功能组合由电压跟随器变为放大器以便实现对外界设备的功能扩展。利用PSoC内部的实时时钟模块(RTC)为采样数据加上时间戳。在节点通用PCB上还留有与95到99号、1号与2号管脚相连的跳线插座,用于使用PSoC内部的1602显示驱动实现对采集数据的实时显示功能。在PCB上,预留出I2C与SPI的引线接口,在使用时直接通过设定对应PSoC模块和GPIO来实现。节点通用PCB上留有两路UART接口,一路用于连接具有UART接口的外部设备,而另外一路通过MAX3232连接符合RS-232标准的外设,UART通信通过调用PSoC内部UART功能模块实现。在节点中还留出3路PWM信号输出端,以便输出PSoC内部可配置PWM模块产生的信号,从而实现大棚机电设备的控制功能。

  节点土壤温度/湿度传感器选择不锈钢防水封装的SHT11温湿度传感器,该传感器为接触式温度传感器。SHT11将传感元件和信号处理电路集成在一块微型电路板上,输出完全标定的数字信号。SHT11与PSoC使用I2C协议进行连接。环境温湿度采集选用AM2306耐候型户外温湿度传感器,该传感器为单总线型传感器,具有较高的采样精度与使用灵活性。其使用1-Wire协议方式与PSoC进行通信。日光辐照传感器选择Davis公司出品的6450日光辐照传感器,该传感器以1.67 mV-1 W/m2的比例输出对应日光辐照的比例标定电压。在测量中,SHT11依照葡萄具体的根系深度置入其植株下的土壤层中。AM2306被放置在葡萄冠层中用于采集其冠层内部的具体温湿度数据。而两路日光辐照传感器被放置在葡萄冠层上与冠层下界面,分别用于测量日光辐照透过葡萄大棚覆盖的塑料薄膜与日光辐照进一步透射到冠层下葡萄果实处的日光辐照值。

  设计中工作节点的ZigBee模块选择DRF1607H型透传模块,DRF1607H与PSoC通过UART接口连接。如果数据汇聚节点距离上位机较近,则与工作节点使用相同的ZigBee架构。而如果数据汇聚节点距离上位机较远,则在节点上额外添加具有RS-232接口、传输距离可达数公里以上的DRF2617A透传模块。此时数据汇聚节点与其从属的工作节点使用DRF1607H通信,而数据汇聚节点与上位机之间使用DRF2617A进行通信。需要注意的是,此时须将子网与主网设置互异的ID。上位机使用DRF2618A模块进行数据的接收与发送。节点采用太阳能-铅酸电池组合供电方式,使用时,太阳能电池组件被置于大棚外部。太阳能控制器输出的电压先通过LM2596-5.0输出5 V电压,之后通过HT7333为系统提供3.3 V的工作电压。铅酸电池的输出电压通过电阻分压输入到PSoC内部Voltage Fault Detector(VFD)模块,当该电压低于9 V时,将在VFD的pgood端给出告警信号。

3 系统通信与软件设计

  在系统通信中,利用ZigBee模块提供的可变长度数据包容器适配具体需要传输的数据形式。系统工作在轮询模式下,节点对上位机发出的具体指令做出响应,依据上位机的指令要求对特定的传感器数据进行采集或控制大棚机电设备工作。具体ZigBee数据包由先导码、容器长度指示位、负载及结束码组成。上行及下行数据包中为每一个设备指定一个32 bit的子负载区段,其中前11 bit为设备编号,之后的1 bit是操作控制位,最后20 bit是数据或控制变量。设备编号中的前8 bit为设备所属节点的ID,后3 bit为设备本身的属性ID。如对机电设备进行设置操作,下行数据包中每一个机电设备子负载区段中的后20 bit中存储PWM的设置取值;而对于上位机下行而来的对传感器数据的采集请求,则将该20 bit置空。当机电设备完成相应配置或传感器数据采集完成后,节点向上位机发出对应的数据包,此时每个传感器对应的子负载区段中被装入采集数据,而控制设备对应的子负载区段中装入设备响应状态值。另外由于数据包的长度是可变的,因此每一次节点在接收到上位机的下行指令数据包后,将依照指令数据包容器中指令的先后顺序完成所有操作后再向上位机发出返回数据包。无论节点及其上传感器是否属于子网,其都被赋予网内唯一ID。如果节点属于子网,其从属的数据汇聚节点中则记录该节点的ID与设备ID。如有针对该节点的下行/上行数据包,则由汇聚节点负责在子网与主网间进行转发。

  上位机软件基于JSP技术设计。JSP是一种动态网页技术,它可以直接调用javabean或直接插入Java代码,然后通过与HTML的结合构建动态网站系统,达到用户与服务端交互的目的[8]。上位机ZigBee模块通过串口将数据导入计算机。实现中首先建立一个类,类中需要添加必要的属性,如readStr、writeStr等,并且需要为这些属性添加必要的get和set方法,方便对属性值进行获取和设置。在新建的类中引入comm3.0.jar包,通过该包提供的API就能很容易地实现打开串口、关闭串口、发送数据、接收数据等功能。如Commportidentifier类,可以用该类提供的方法处理端口所有权问题和确定是否有可用的端口等问题。通过SerialPort类提供的方法可以完成基本的读写功能和常用的设置工作。在开发中需要定义线程对端口进行监听。利用HTML和JSP标签编写满足需求的JSP页面,该页面不但能动态显示下位机发过来的数据,还能通过向下位机发送数据来对下位机进行控制。如图2所示,在这个页面不但能获取下位机传过来的温湿度、日光辐照数据,并通过曲线图表的形式显示出来,还能通过点击开启水泵、开启遮光帘按钮对下位机进行控制。JSP自动通过后台程序读取系统的实时时间,在每一个系统轮询周期开始后向各个节点及设备发出具体指令。用户在通过UI进行操作后,在下一个轮询周期开始时操作生效。每次采样数据及设备返回值都会被写入SQL Server数据库中,方便系统使用者进行回调查看。

001.jpg

4 结论

  针对葡萄大棚栽培的需求,本文提出了一种基于PSoC的葡萄大棚远程监测系统。该系统节点具有高度的配置灵活性与通用性,可根据具体的需求灵活配备外部设备及内核模块。系统可对葡萄大棚基本种植参数进行采集,并可实现远程机电设备控制功能。上位机采用JSP设计,可以令用户简单方便地对系统进行操作。该系统具有使用灵活、功能伸缩性好、通用化程度高、配置便捷与使用方便等特点,可望为葡萄大棚栽培提供较为方便的工程实践支持。

参考文献

  [1] Shen Jianbo, Cui Zhenling, Miao Yuxin, et al. Transforming agriculture in China: from solely high yield to both high yield and high resource use efficiency [J]. Global Food Security, 2013, 2(1):1-8.

  [2] Yu Xiaoqing, Wu Pute, Han Wenting, et al. A survey on wireless sensor network infrastructure for agriculture [J]. Computer Standards & Interfaces,2013,35(1):59-64.

  [3] SRBINOVSKA M, GAVROVSKI C, DIMCEV V, et al. Environmental parameters monitoring in precision agriculture using wireless sensor networks[J]. Journal of Cleaner Production, 2015,2(1):297-307.

  [4] 李道亮.农业物联网导论[M].北京:科学出版社,2012.

  [5] 王海伦,余世明,范一鸣.基于PSoC的多参数无线传感器网络节点[J].仪表技术与传感器,2012(2):85-87.

  [6] 王波,杨永明,汪金刚,等.基于PSoC的无线传感器网络节点设计[J].传感技术学报,2009,22(3):413-416.

  [7] 赵春锋,陆善婷,刘霄毅,等.基于PSoC的滚刀周节误差自动测量装置[J].微型机与应用,2013,32(21):23-25,28.

  [8] 宋俊玲.基于jsp+javabean技术的图书管理系统[J].电子技术与软件工程,2014(16):216.


此内容为AET网站原创,未经授权禁止转载。
Baidu
map