金文忻,金榆川,邓玉超,郭笑添,马恩庆
(江苏农林职业技术学院,江苏句容 212400)
我国水资源总量和人均用水量不足,水资源分布不均匀[1]。在此背景下,发展设施农业和水肥一体化灌溉技术是实现乡村振兴战略的一项重要技术,提高水资源利用率、增加水肥灌溉效率显得尤为重要[2]。目前应用的水肥灌溉信息采集系统的采集参数大部分比较单一,无法满足实际的生产需要,不能全面的反映出农业生产的实际情况。本文通过联系实际生产,基于LabVIEW软件设计了一款能够对水肥精量灌溉信息进行远程采集的系统,通过虚拟仪器对水肥灌溉情况和植物生长的环境参数进行远程实时监测。结果表明,通过使用本系统可以有效地提高水肥灌溉效率、节省水肥资源和提高农业生产水平,具有较高的实际运用价值。
本文通过调研水肥一体化灌溉设备的发展现状和江苏省农博园实际生产需求,设计了一款能够远程对水肥灌溉数据环境参数等多位参数进行全面实时监测的系统[3-4]。本系统通过LabVIEW软件搭建上位机,用于显示和处理数据,通过信号采集卡对传感器信号进行调理和上传[5-6]。系统主要采集了环境温度、空气湿度、土壤湿度、光照强度、二氧化碳浓度和水肥pH值、水肥EC值、水肥流量等多种参数。系统主要由信号采集模块、数据处理模块和虚拟仪器面板三大部分组成。信号采集模块采集模拟量或数字量信号后,通过数据处理模块进行信号调理,最后通过驱动软件传递到虚拟仪器面板,从而实现显示输出、报警输出、控制输出、存储输出和参数输入等具体功能。系统总体结构如图1所示。
图1 系统总体结构
系统主要由信号采集末端、信号调理模块和虚拟仪器面板构成。具体来说,主要由传感器电路和通信电路构成,传感器电路主要由温度传感器、湿度传感器、光照传感器、二氧化碳浓度传感器、土壤湿度传感器、流量传感器、电导率传感器和pH值传感器等构成。通信电路则主要负责将传感器与信号调理模块进行实时通信。其功能主要是利用传感器采集各种类型的参数,并将采集到的模拟信号或数字信号传递至信号采集卡;信号调理模块主要由一块信号采集卡构成,通过信号采集卡对信号采集末端上传的数据进行放大、滤波、转换和调制解调等一系列调理操作,最后通过USB端口数据传递至上位机;虚拟仪器面板通过LabVIEW软件设计,主要有数据显示、数据处理、数据分析与报警、数据存储和远程使用等功能。
本文根据实际生产需要,选择了合适的传感器以及与LabVIEW软件兼容性更强的NI USB信号采集卡,信号采集卡内部封装了2.3KB RAM和16KB Flash的Silicon Labs C8051F320芯片以及一块ADS7871模数转换芯片。虚拟仪器面板主要完成数据的实时显示、采集、存储与分析等功能。主要包括驱动和通信模块、数据处理模块与数据显示模块等。驱动和通信模块主要负责上位机对采集卡的驱动以及同信号采集卡对调理后的信号进行通信。数据处理模块主要负责数据进行离线存储,可以将信号以EXCEL文件格式保存,同时,可以对数据的实时监督,判断实时数据是否超过设定阈值。数据显示模块从采集模块接收数据进行实时显示至前端用户界面,同时接收采集模块传递的报警信息进行显示。
图2 硬件系统
硬件层主要由各传感器、信号采集卡和上位机三大部分组成。硬件层主要负责数据的物理通讯,由前端传感器采集到环境信号通过RSE或差分模式传递到信号采集卡,信号采集卡将信号进行滤波、放大等调理操作,整合成计算机可以识别的数据通过USB端口传递给上位机,由上位机进行识别后的分析、显示和存储等进一步操作。数据层主要由环境参数信号、调理后的数据、数据采集卡驱动软件、DAQ助手等部分构成。环境参数信号经信号采集卡调理后变为上位机能够识别的数据,通过信号采集卡驱动软件传递到DAQ助手,最后再经过DAQ助手传递到上位机中,由系统对其进行加工。硬件结构如图3所示。
图3 硬件结构
硬件安装主要是传感器与信号采集卡以及信号采集卡至上位机的连接。本文中传感器大部分以模拟量—单端输入为主,在接线时需要注意传感器信号端接线应与分配的引脚对应。后续在软件内分配信号采集通道时,也需要根据此时分配的引脚情况对系统进行进一步设置。传感器与信号采集卡的供电需要单独设置,因本文涉及多款传感器,各传感器的工作电压不同,所以在配置传感器与信号采集卡电源时应注意将工作条件相同的设备分为一组进行供电。信号采集卡与计算机之间的通信主要是由信号采集卡上的USB连接器通过USB线连接至计算机,将USB线的一端连接信号采集卡,另一端连接计算机的USB端口。
虚拟仪器技术突破了随着科技的不断发展,传统仪器设备不能满足实际应用需要的限制。通过利用计算机硬件资源和专一开发的VI设计编程软件,构成一套完整的、含有数据处理、数据通信的系统[7]。本文选用LabVIEW软件搭建虚拟仪器。LabVIEW自带各类图表输出插件,可以直观地看到采集到的实时数据变化,不需要开发人员对图表输出功能进行二次开发。除此之外,配合LabVIEW内部封装的Web Server组件,还可以实现基于Internet的数据采集和传输[8-9]。
本文分别对土壤湿度、环境温度、二氧化碳浓度、水肥EC值、水肥流速、光照度、水肥pH值、环境湿度等8个生产环境要素分别进行数据采集,在操作界面配置了实时数据显示模块、阈值设置模块和报警模块,控制按钮可以停止当前进行的数据采集操作,并且系统预留了阈值设置窗口,用户可以通过实际情况设置报警阈值。采集过程中,系统能够将实时数据自动存储到指定文件夹,方便用于进一步分析。
系统的最终使用者是用户,作为一款需要用户长时间操作的系统,人性化、友好的操作界面非常重要。前端面板的设计主要是以集成各种功能的Main函数为基础,在此基础上针对采集系统的各参数采集模块进行分别设计。根据系统设计逻辑,打开用户操作界面,在Main函数上对各个功能模块进行调用。能够直接在用户面前显示的函数就是Main函数,因此在设计用户操作面板时需要着重对主页面进行美化。针对不同的信息模块,程序根据其数据特点进行显示功能定制,以温度信息采集模块为例,主面板可以显示当前系统时间和实时温度数据。同时程序设计阈值设置窗口,用户可以根据生产需要设置系统阈值,当传感器采集到的数据超出阈值范围之内后,右侧报警灯会亮起,以此提示用户对环境进行相应操作。“停止采集”按钮可以立即结束当前程序运行。程序中还可以显示历史数据,在选项卡按钮中,点击“历史数据”选项按钮,就可查看历史数据信息。同时设置历史数据选项卡页面,该面板配置一块波形图表,用于显示采集到的历史数据,图表x轴为时间,y轴为温度数据。
图4 人机交互界面
在上位机软件环境中需要对各个传感器采集到的模拟信号通过转换后传递至上位机中,系统通过DAQ助手实现。DAQ助手有两种编程方法,一是直接对DAQ助手进行配置、编程,最后转换成DAQmx代码。这种方法操作简单,逻辑清晰,这种方法操作难度小,但使用起来不够灵活,采样率、采样数等一些列信息采集卡参数在程序运行过程中难以修改。第二种方法是直接将DAQ助手转换成DAQ函数,然后在DAQ函数中进行程序编写。这种方法可以根据实际生产需要灵活修改DAQ助手的各项参数。本文选用第二种方法对程序进行编写,可以灵活使用信号采集卡中的采集通道函数、定时函数、开始任务函数、清除任务函数等。在DAQ助手的配置中,可以根据传感器的技术参数对其进行输出转换,同时,采集通道的配置需要根据传感器与信号采集卡的实际接线情况分配。末端模拟量传感器将采集到的信号传递到采集卡,经过采集卡放大、滤波、转换等一系列调理操作后,传递到的上位机的数据还不能直接作为输出数据,还需要对其进行转化计算。系统后面板部分程序如图5所示。
图5 后面板部分框图
系统选用LabVIEW软件中的“Web发布”工具实现采集系统的远程使用。将本地计算机作为服务器,配置网页客户端,用户在外网使用时,通过访问主机服务器实现远程控制。不需要对系统进行额外编程,降低了系统维护和使用难度。菜单栏“工具”选项卡中找到“Web发布”工具,首先配置本地服务器,选择VI程序。查看模式中“快照”和“显示器”两种模式只能显示当前屏幕画面,不能实时更新和控制操作,因此系统选择“内嵌”模式。“内嵌”模式能够对采集系统进行实时显示,同时,在申请权限的情况下还可以实时控制采集系统。注意,首次配置时应先“启动Web服务器”,同时勾选下方“连接建立时提交控制请求”,单击“下一步”直至配置完成后生成URL地址。本系统生成的地址为:http://Jinyc-Personal-Work-Station:8000/main.html,其中“Jinyc-Personal-Work-Station”为本机名称。推荐使用IE浏览器对其进行访问,其他浏览器大多不支持加载VI面板的插件。当用户在外网对该系统进行访问控制操作时,需要对其进行内网穿透操作,从外网网络客户端对本地服务器进行映射,映射完成后即可进行相应操作。常用的IP映射方法主要是通过nat123或者花生壳软件实现。Web发布服务器配置如图6所示。
图6 Web发布配置
在真正将系统投入实际使用之前,需要搭建一个模拟的仿真环境。本文在系统程序设计完成后,利用另一块虚拟信号采集卡生成虚拟信号,虚拟信号生成器将波形数据传输至虚拟信号采集卡的输出通道,通过本系统对其进行采集,最后能够接近真实的模拟系统运行的过程。完成仿真环境搭建和软件相关配置后,需要对程序进行仿真运行测试。以温度采集模块为例,配置好仿真环境后,系统自动采集数据,如图7所示。系统高温阈值设置为35℃,当前测试温度为41℃,系统高温报警灯亮起提示用户。
图7 仿真运行测试
在完成本地仿真运行测试后,还需要对进行远程使用测试。在使用网络客户端访问系统之前,需要在本地服务器上对操作系统进行Web发布,并且保持系统在本地服务器上处于打开状态,远程使用界面如图8所示[10]。设置完成后,通过访问本地服务器生成的地址即可实现对系统的控制。测试结果表明,远程使用功能可以达到预期效果,能够满足实际使用需要。
图8 远程使用操作面板
本文基于LabView编程软件设计了一款远程、实时的水肥灌溉信息采集系统。通过本系统可以实现针对二氧化碳浓度、水肥流量、水肥EC值、水肥pH值、环境温湿度、土壤湿度、环境光照等要素的实时监控的信息采集系统。同时系统还具有自动保存历史数据、异常报警和远程访问等功能,能够满足用户实际生产的基本需要。利用信号采集卡对传感器信号进行调理和传递,便于安装使用。通过本系统可以有效地降低系统安装难度和提高水肥利用效率。