目前,自动化、智能化、网络化和数字化已经成为农业发展的主要方向之一,虚拟仪器技术正是适应这种现代化农业的发展要求而出现的。农业的生态环境对烟叶的生长发育、栽培技术的实施、病虫害的预防等,有着极其重要的影响。而烟叶的生长发育状况又同光照度、温度、湿度等因素息息相关,因此在农业经济突显“多样化”、“优质化”、“高效化”的今天,简单的依靠人的经验力量来监测环境,尤其显得杯水车薪。而且传统的数据采集方法耗时耗力,容易受到外界的干扰,准确性不高。本设计试图利用基于LabVIEW(Laboratory Virtual Instrument Engineering Workbench,实验室虚拟仪器集成环境)开发平台的虚拟仪器技术来对果树园区的生态环境进行实时数据采集和存储。
1系统整体设计
烟田生态环境系统的构建方案采用PC-DAQ(基于计算机的数据采集卡)系统,由传感器、信号调理装置、数据采集卡和执行机构等设备组成。
本监测系统利用数据采集卡的多路选通开关来完成各硬件数据通道之间的切换,从而实现计算机和一台数据采集卡对烟叶生长的温湿度、光照等气候因子进行实时采集和测量的目的。将采集来的烟田生态环境数据经分析、处理后,在前面板实时显示和静态显示(日平均数历史数据),之后将它们存储起来以便日后查询和使用。另外,本系统中还增加了网络传输功能,可以实现用户在本地计算机上开启并操作远程服务器端计算机上VI的前面板。
2系统硬件构成
图1为烟田生态环境监测系统的硬件整体框图。该系统主要完成对生态环境的数据采集。数据采集系统一般由数据采集硬件、硬件驱动程序和数据采集函数及应用程序几个部分组成,其基本任务就是用于物理信号的产生和测量。
本监测系统的硬件设备主要有温度传感器,湿度传感器,光照传感器,数据采集卡和计算机等组成。首先温湿度传感器及光照传感器把温湿度信号及光照信号转换为电信号,然后经数据采集卡的AD转换后传递给计算机,最后计算机在对采集的数据进行分析处理后对其进行存储显示。
对于硬件的选用,应遵循实用、标准和耐用的原则。在传感器选择方面,可以采用LT/W/S室外温湿度传感器,其温度量程是-20~80℃,湿度量程是0~100%;LT/G光照度传感器,光强测量范围是0~20万lux。
本系统中使用NI公司的数据采集卡的PCI-6024,此卡基于PCI总线,支持单极性和双极性模拟信号输入,信号输入范围分别为-5~+5 V和0~10 V。可提供16路单端/8路差动模拟输入通道,2路独立的D/A输出通道,24线的TTL型数字I/O通道,3个16位定时计数器等多种功能。采用NI公司提供的Measurement Automation软件进行简单的设置便可完成系统软件与数据采集卡之间的通讯。
3烟田监测系统软件设计
本系统的软件部分是基于LabVIEW7 Express.应用平台设计的。按照模块化的思想,该系统共设计为数据采集、数据实时显示、数据存储和网络传输四个模块。每个模块可按功能编写成一个VI,并可通过主控模块来分别调用。其软件系统结构框图如图2所示。
3.1 主控模块
主控模块可以使各模块之间按照系统的框架协议来协调工作和相互通信,并可实现人机交互。同时主控模块还提供用户接口,用户可以通过该接口发出指令,主控模块根据指令来调度各功能模块。本系统提供的形象逼真的仪器软面板可使用户使用起来极为方便。
3.2数据采集模块
数据采集模块主要完成温度信号及光照信号的数字信号的转化,并将其传递到计算机。NI公司的数据采集卡的数据采集功能可以由LabVIEW提供的模入模块中的中级模入函数组合起来实现。
图3是使用中级模入设计的数据采集程序框图。先用Device Open.vi模块打开数据采集设备;然后用AI Config.vi模块配置数据采集卡,选择模拟量输入通道,并指定输入信号的范围来调节硬件增益,同时设置采集数据所占用计算机缓冲区的大小及设置扫描间隔;再通过AI Start.vi启动模入操作,主要用于控制数据采集速率和要获得的扫描数,这里将Number of scans to acquire (获得的扫描数)输入端口值设置为“0”,即选择连续采集模式,直到清除模入操作为止(如果设置为“-1,’则只要缓冲区满就停止扫描);然后通过AI Read.vi从AI Config分配的缓冲中读取数据,它能控制每次读取的点数、读取数据在缓冲中的位置等,输出是一个二维数组,每一列数据对应于通道列表中的一个通道;最后通过AI Clear.vi模块清除模人操作、清除计算机中分配的缓冲及释放所有数据采集的资源。
3.3 实时显示模块
在数据实时显示模块中,采集卡采集来的三组数据经分离处理后,分别和三个WaveformChart连接,并在前面板的Chart图形显示中以三种不同的颜色来显示温度、湿度、光照度三条曲线。刷新模式为默认的Scroll,并设置Show DigitalDisplays,三个布尔指示器显示三个通道是否正在运行,指示器亮,表示数据采集正在进行。同时,当前的数据采集时间也被显示在前面板上。
数据存储中有三个子VI:读取并计算平均数子VI、文本表头子VI和表格表头子VI,系统采用平铺顺序结构来执行整个数据存储过程。首先在程序中设置一定的触发时间(在前面板由用户输入,格式为H:M,如19:00表示晚上7点),然后对一天采集的烟田生态环境数据进行平均数计算,并保存这个平均数。同时,在前面板显示最近天数的平均值曲线。在触发时间运行中,先对采集保存的文本文件进行处理,读取并计算出平均值,然后把这个平均值以两种开式保存:保存成电子表格文件(.xls)时,得到的表格类似报表;保存成文本文件(.txt)时,得到的是包括对应的时间信息和数据的文件。
3.4 数据存取模块
数据存取模块主要通过调用LabVIEW中WriteCharacters To File.VI将经过处理的温湿度值存人指定的文件中,主要用到获取系统日期和时间函数、向文件中写数据的函数数据存储模块的框图程序。
文件的读取必须按照数据保存时的格式去读它,因为原来数据保存为ASCII码格式,用的是字符串数据类型,在读取数据时必须用一个文件I/O函数把数据作为字符串来读出。其中主要用到了Read Characters From File.vi (从文件中读取字符串数据)函数和Extract Numbers.vi (提取非数值符号转换成数值)函数。
3.5 网络传输模块
本系统利用了LabVIEW的远程面板(RemotePanel)技术,用户可以用极为简单的方式直接在本地(Client端)计算机上打开并操作位于远程(Web Server端)计算机上的VI的前面板,甚至可以将LabVIEW的前面板窗口嵌入到一个网页中并在网页中直接操作它。
在LabVIEW中使用Remote Panel需要完成在LabVIEW Web Server端的计算机上开启LabVIEWWeb Server服务和在Client端计算机上连接并运行Remote Panel两个步骤。
本系统利用在LabVIEW环境中直接操作Remote Panel的方法来完成此模块工作,在Client端使用Remote Panel之前,首先在Server计算机上运行LabVIEW,并且配置Web Server,来完成文件路径和网络的设置、客户机访问权限的设置及VIs访问权限的设置。之后就可以在Client端的LabVIEW环境中运行一个Remote Panel了。具体步骤如下:
(1)在Web Server端打开要进行远程运行的VI的前面板;
(2)在Client端的LabVIEW环境中的菜单栏中选择Operate→Connect to Remote Panel,弹出Connect to Remote Panel对话框,输入IP地址和所打开的VI的名字以及端口号。
(3)点击Connect按钮进行连接,当其连接成功后,Remote Panel就会出现在屏幕之上,此后,在Client端的前面板上就可以进行操作控制了。但是应当注意,Client端的前面板和Web Server端的前面板是不同的。
4结束语
本系统基于LabVIEW7 Express功能软件,实现了用一台计算机和一个数据采集卡对烟田的生态环境进行监测。该系统的开发与应用大大克服了传统基于单片机监测系统的硬件结构复杂、软件编程麻烦等缺点,提高了测量精度,实现了远程数据的传输和监测。