,,
(西北师范大学 物理与电子工程学院,兰州 730070)
基于FPGA的土壤数据采集分析决策系统
宋海声,滕喜龙,魏煜秦
(西北师范大学物理与电子工程学院,兰州730070)
为了改善当前土壤施肥及土壤数据管理的盲目性和随意性,提出了一种基于现场可编程门阵列(FPGA)的土壤数据采集分析决策系统;系统用FPGA搭建了土壤数据采集模块,采集了温湿度、酸碱度、常量元素含量和中微量元素含量等土壤信息,通过GPRS将采集到的数据传输给上位机;上位机以专家信息为参考,结合测土施肥技术、数据库技术和.NET技术,完成数据库、模型库和知识库的建立,并最终给出适宜种植的作物、肥力评价、施肥方案等决策结果;试验测试结果表明,该系统可以为种植农作物提供有效方案,在农业生产中有一定的应用前景。
现场可编程门阵列;数据采集;分析决策;数据库;模型库;知识库
土壤是人类生产、生活的基础,是文明进步、经济发展的重要前提,“高化肥投入”的日渐普及,不仅增加了农业生产的种植成本,更导致土地肥力的下降,造成环境污染[1]。严重时还会影响农产品的品质,危害人的身体健康[2]。因此如何快速的测定当前土壤信息并科学地确定化肥适宜施用量,是目前政府和农户越来越重视的问题[3]。为了提高土地和化肥的利用率,提高产能,保证粮食安全,本研究提出了一种基于现场可编程门阵列(FPGA)的土壤数据采集分析决策系统,用来改善当前施肥的随意性和盲目性的缺点,让用户了解土地成份,并最终对施肥和种植进行合理和有效的判断。
系统的整体设计如图1所示,系统整体可以分为两个模块:土壤数据采集模块以及上位机分析决策模块。土壤数据采集模块通过土壤温湿度传感器、土壤酸碱度指示电极、土壤养分传感器对土壤信息进行采集,由FPGA读取数据,并负责把采集的数据按照自定义的通信格式变成相应的帧格式发送给上位机分析决策模块[4];分析决策模块根据土壤养分的信息决策出适宜的作物、合理的施肥量以及具体的施肥方法。
设计的采集参数包括温湿度、PH值(酸碱度)以及常、微量元素含量。采集的温度范围为-40~+60 ℃,精度为±0.4 ℃;采集的湿度范围为0~100%RH,精度为±3%RH;PH值(酸碱度)范围1 ~14,精度为0.1;采集的常、微量元素包括氮、磷、钾、硼、锰、锌、铜、铁、钼等,精度在0.1~0.01 mg。
图1 系统整体设计框图
2.1 主控芯片
主控芯片采用FPGA系列EP2C8Q208C8芯片。
利用FPGA硬件并行的优势,在每个时钟周期内能完成更多的系统任务;并且在硬件层面控制输入输出,节省时间,节约成本[5]。另外FPGA不使用操作系统,拥有真正的并行执行和专注于每一项任务的确定性硬件,保证其具有更好的稳定性。
2.2 土壤温湿度数据采集
土壤温湿度传感器采用SHT11,FPGA通过模拟I2C协议与SHT11传感器进行通讯。输出为数字相对温度、数字相对湿度,集成度高,稳定性好,其温、湿度数据可达14位、12位,并且位数可调整[6]。
通电后,用一组“启动传输”时序完成数据传输的初始化,之后发送SHT11命令集中的二进制命令进行数据测量。如发送00000101表示测量相对湿度,发送0000000011表示测量温度。表1为SHT11命令集。
表1 SHT11命令集
2.3 土壤酸碱度数据采集
测量酸碱度最常用的方法是电位分析法。通过测量参比电极、指示电极、接地电极组成的复合电极与被测溶液之间等效原电池的电动势[7],计算出溶液中氢离子的浓度,进而得知酸碱度。指示电极电位的变化与氢离子浓度的变化关系,可以用数学公式Nernst方程[8]表示,如式(1):
(1)
式中,U代表电极探头电势值,U0代表酸碱度为7时电极探头的电势值;R为常数,数值为8.31441J/(K*mol),T为绝对温度,F为法拉第常数96.487kJ/(V*mol),H+为氢离子浓度;
2.4 土壤养分数据采集
传统土壤养分的测量是先取样再进行实验室数据分析,这种方式目的性强但是时效性差。系统采用恒美公司的土壤微量元素检测仪HM-TYD对所需要的氮、磷、钾、硼、锰、锌、铜、铁、钼等元素含量进行检测。该仪器稳定性好,精确度高,误差小,综合检测结果较好。
2.5 GPRS模块
GPRS选用SIMCOM公司的SIM300模块。工作过程通过串口中断服务程序发送AT指令完成对SIM300模块的初始化,之后建立GPRS通信链路,并连接服务器进行网络的注册,最后以UDP协议打包数据,进行实时发送和接收[10]。
分析决策模块采用C/S体系架构,利用Visual Studio 2010为开发平台,SQL Server 2008为后台数据库,以测土施肥技术为核心,参考专家信息,将.NET技术、数据库技术及专家系统技术相结合,实现了信息管理、推理决策、参数计算、辅助查询等功能。总统框图如图2所示。
图2 分析决策模块总体框图
3.1 数据库的建立
数据库采用目前数据库设计普遍使用的“实体-关系方法”来建立数据库的概念模型(E-R模型)。数据库表包含有作物信息表、肥料信息表、丰缺指标表、数学参数表、检测数据表、数据处理表和用户表等。以检测数据表和结果保存数据表为例详细说明表结构(表2和表3)。
表2 检测样本数据表结构
通过检测土壤数据表的信息与土壤丰缺指标数据表组做对比进行土壤肥力评价,所得结果的图片路径保存到评价结果信息表中,其表结构如表3所示。其他决策结果的保存数据表的结构都与表3相同。
表3 结果保存数据表结构
3.2 模型库的建立
3.2.1 土壤养分丰缺指标模型
土壤养分丰缺指标模型是指通过对检测的土壤养分值与作物产量进行相关性分析得出的结果。对土壤养分的划分可通过计算土壤缺少某种养分时某作物的产量与该作物在养分充足时是获得的成品产量的比值来确定。根据我国国家建议标准并通过某值养分的相对含量高低来表示养分等级,一般养分的相对含量在50%一下的的养分等级为极低;50%~70%为缺乏,70%~90%为中等,>90%为丰富,以此为依据进行施肥推荐。
例如,当相对含量>90%时,说明大量施肥并不重要,土壤本身的养分已经足以提供作物的成长。根据研究甘肃省历年的土壤检测和试验数据并结合国家标准,基本上确定了本系统的土壤养分丰缺指标模型,各类分级标准见表4、表5。
表4 土壤酸碱度评价
3.2.2 施肥效应模型
一般反应单一元素肥料的施用量对作物产量的影响用一元二次多项式来表示,反应多种肥料施用量与作物产量的关系需要多个函数构建成函数关系式组如式2所示。
表5 土壤有效养分含量丰缺指标
注:1%=10g/kg
(2)
而想要同时反应氮、磷、钾3种肥料的施用量对作物产量的影响,我们可以采用三元二次多项式来描述肥料效应函数,如式(3)所示:
Y=a0+a1x1+a2x2+a3x3+a4x12+a5x22+
+a6x32+a7x1x2+a8x2x3+a9x1x3
(3)
式中,Y表示作物的产量,x1、x2、x3分别代表了氮肥、磷肥、钾肥的施用量,a1、a2、a3为一次项主效应,a4、a5、a6为二次项主效应,a7、a8、a9为交互效应,且都为偏回归系数。采用某块地10年来的施肥产量数据进行算法的验证,数据如表6所示。其中为了保证准确性,需要提供一项该地区的空白施肥产量。
表6 施肥试验数据 公斤/亩
算法计算出的公式如公式(4)所示,其误差平方和为0.0443,符合要求。
Y= 286.14 + 24.412x1+ 37.967x2-8.621x3-1.575x12-
0.722x22-1.04x32-2.435x1x2+ 0.166x2x3+ 2.322x1x3
(4)
3.3 知识库的建立
知识库的建立主要通过知识的获取,知识的分类,知识的表示方法以及推理机制来实现[11-12]。知识的获取就是简化、整理、完善领域专家的系统知识,并录入到知识库中;知识的分类即将知识以数据型、描述型、规则型进行分类,方便调用和管理;知识的表示方法采用:if(前提 1)&(前提 2)&.……then(结论 1)的形式。例如if(土壤类型适宜)&(土壤PH值适宜)&(土壤养分满足某作物要求)&……then(该土壤适宜种植该作物)。推理机制采用正向推理,即针对一个具体问题,系统将参考已知信息,运用知识库中数据,推导出一些中间结论,并对现有的信息进行完善和扩充,通过不断地完善信息,逐步求解直至问题解决。
4.1 管理功能
结合数据库技术,实现对系统所需数据的实时管理。系统操作过程中很多地方都需要访问数据库,为了缩减系统编码的工作量,达到方便快捷操作数据库的目的,系统定义了各个实体的操作类,包括对实体属性选择、添加、修改、删除等方法。通过这些类与数据库的操作,仅需调用该类便可以实现与数据库的连接,提高了系统的可维护性和适应性。由于土壤及肥料的数据量较大,每次都需要从数据获取数据集,所以创建了DataAdapter对象来获取指定数据表中各项的值。
基本的管理操作由数据库公共操作类提供的接口实现。显示界面使用getDateSet获取所需的数据聚合,再通过dataGridView控件显示。简单的数据搜索同样使用上述方法获取数据并显示。添加、修改和删除功能是通过使用contextMenuStrip控件,在数据列表中右击鼠标弹出的菜单中选择相应功能来实现。数学参数的设置可以先输入数学公式并保存入数据库中,在决策计算时再调出公式,并根据已知的参数计算出结果。检测数据管理是通过将土壤检测设备对土壤样本检测所得到的土壤养分结果保存到数据库模块的方式进行。
4.2 决策功能
分析决策系统可实现适宜种植作物决策、土壤综合肥力评价、配方施肥决策等功能。
4.2.1 适宜种植作物决策
适宜种植作物决策是通过使用select语句和for循环方法来筛选作物。首先根据作物的适宜PH值筛选出第一批作物,保存入listView1中。再根据作物适宜的土壤筛选出第二批作物,与listivew1中的项目进行比较,以两者相同的项目集更新listView1。最后根据土壤中缺乏的微量元素筛选出对缺素不敏感的作物,通过再次与listView1比较即可得出该土壤适宜的作物,试验运行效果如图3所示。点击界面右下方的成本与收益分析按钮,将会得到如图4所示的成本与收益效果图。
图3 适宜种植作物试验效果图 图4 成本与收益分析运行效果
4.2.2 土壤综合肥力评价
土壤综合肥力评价指根据土壤养分丰缺指标模型得出的土壤各养分的综合指数和养分等级。土壤各养分的综合指数是以专业数据和历史资料为参考,根据土壤中各养分的特点及其在土壤肥力构成中的重要性,先计算出土壤养分各参评指标的权重值(计算得出有机质的权重为0.3,碱解氮(N)、速效磷(P)、速效钾(K)的权重分别为0.25,0.25和0.2),再通过加法模型:I=∑Fi×Wi(i=1,2,3,...,n),计算出土壤各养分的综合指数。其中I代表地块养分综合指数,Fi表示第i个指标的评分值,Wi表示第i个指标的权重。土壤养分等级是依据“土壤养分等级划分规则”制定的,对于不同综合指数的养分可以分为极高、高、中、低、极低5个等级。土壤综合肥力评价的试验效果如图5所示。
4.2.3 配方施肥决策功能
该功能是以养分丰缺指标法、肥料效应函数法和养分平衡法为基础,结合测土施肥技术而得出的施肥决策。
养分丰缺指标法是将土壤养分测试结果和田间肥效试验的结果相结合,通过分析建立某区域、某作物的土壤养分丰缺指标,根据田间肥效试验的施肥效应规则设计的施肥推荐,其直感性强,简捷方便,但精确度较差。
肥料效应函数法是建立在田间试验和生物统计基础上的计量施肥方法,其精确度较高,贴切实际情况,但地区局限性强,费工费时。
养分平衡法也叫目标产量法,是以计算作物达到目标产量的养分需求量和土壤实际供养量之间的差值来计算施肥量的。其概念清晰,计算方便,但精确度受各个参数的影响较大,准确度难以控制。
图5 综合肥力评价试验效果 图6 养分丰缺指标法决策试验效果图
用户可以自行选择3种方法之一进行施肥推荐。养分丰缺指标法决策试验效果如图6所示。
4.2.4 其他功能
用户通过输入作物的缺素症状,使用模糊搜索和精准搜索,就可判断出作物的缺素种类并给出施肥意见。
试验表明,本文所设计的系统能实现对土壤数据的采集,方便管理土壤信息、农作物信息和施肥信息,能提供较准确的种植方案与施肥方案,在提高农作物经济收益方面有一定的应用前景。
[1]李莎莎, 朱一鸣.测土配方施肥技术推广对农户过量施肥风险认知影响分析[J].农林经济管理学报, 2017,16(1):65-73.
[2]宋艳茹.测土配方施肥技术的推广与应用探讨[J]. 中国农业信息快讯, 2014,(7S):55-55.
[3]贾生尧. 基于光谱分析技术的土壤养分检测方法与仪器研究[D]. 杭州:浙江大学, 2015.
[4]左现刚, 刘艳昌, 王建平. 基于Arduino 和 VI 的农田信息无线采集系统设计[J]. 农机化研究, 2016(2):213-217.
[5]杨海钢, 孙嘉斌, 王 慰. FPGA器件设计技术发展综述[J]. 电子与信息学报, 2010, 32(3):714-727.
[6]喻 旋, 张东旭, 付文卓. 基于SHT11传感器的温湿度测量系统设计[J]. 电子科技, 2014, 27(6):121-125.
[7]王海波.海水淡化用pH及电导率在线检测系统研究[D].杭州:杭州电子科技大学, 2011
[8]廖斯达,贾志军,马洪运,等. 电化学基础(II)——热力学平衡与能斯特方程及其应用[J]. 储能科学与技术,2013,2(1):63-68.
[9]白 旭, 胡 辉, 李万军,等. 基于ADS7945的微弱信号采集系统[J]. 北华航天工业学院学报, 2015, 25(5):15-18.
[10]岳 洋, 兰国辉, 周红进. 基于SIM300和CC1010的无线数据采集监控系统[J]. 化工自动化及仪表, 2016, 43(2):215-217.
[11]任周桥, 陈 謇, 程街亮,等. 基于知识库的施肥决策系统及应用[J]. 农业工程学报, 2011, 27(12):126-131.
[12]张 涛, 刘长征, 张 泽,等. 基于Web在线咨询施肥系统的设计[J]. 石河子大学学报(自然科学版), 2014(2):260-264.
ASoilDateCollecting,AnalyzingandDecision-makingSystemBasedonFPGA
Song Haisheng,Teng Xilong,Wei Yuqin
(Northwest Normal University,Lanzhou 730070,China)
In order to improve the blindness and randomness of current soil fertilization and soil data management, a soil data collecting, analyzing decision-making system based on field programmable gate array(FPGA) is proposed in this paper. This system builds the soil data collecting module on FPGA, which is designed for gathering temperature, humidity, pH, major elements and trace elements content in soil and transmitting the collected data to the host computer by GPRS. The host computer establish database, model base and knowledge base by using expert’s information and soil testing and fertilizer recommendation technology, and decision-making results will show suitable plant,evaluation of fertility and fertilization scheme. Test result show that the system can provide valid solution for crop planting and has a broad application prospect in the field of agriculture.
field programmable gate array(FPGA);data collecting;analyzing and decision-making;database; model base;knowledge base
2017-06-14;
2017-07-30。
甘肃省自然科学基金(1606RJZA065)。
宋海声(1964-),男,甘肃兰州人,副教授,主要从事计算机测量与控制的研究。
1671-4598(2017)10-0263-04
10.16526/j.cnki.11-4762/tp.2017.10.067
TP274
A