APP下载

基于大数据技术的农业物联网应用系统

2018-01-09杨亚飞汤军宋树华李功权

电脑知识与技术 2017年34期
关键词:并行计算数据采集大数据技术

杨亚飞+汤军+宋树华+李功权

摘要:目前,农业生产已经越来越趋于精细化和智能化,该文介绍了基于可横向扩展的列式数据库HBase以及并行计算框架MapReduce等大数据技术的农业物联网的应用系统。农业物联网涉及对农业生产环境数据的实时采集、农作物的实时监控、农作物的生长状况判断以及改善农物的生长环境等方面。一个完整的物联网系统应该涉及农作物生长的各个方面,系统基于采集的数据拟合环境变化曲线(ECC),然后,再结合作物的生长状况学习出农作物的最佳生长环境(CBGE)曲线,最后,再依据农作物的生长周期构造农作物生长模型(CGM)。在此基础上就可以实现农作物的精细化耕作,实现远程控制环境变化进而达到智能耕作的目的。

关键词:物联网;数据采集;并行计算;列式存储;大数据技术

中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2017)34-0232-03

Abstract: At present, agricultural production has become more and more sophisticated and intelligent.This article introduce the Based on big data technology that including column database HBase and MapReduce computing framework etc to realize the agriculture IOT application system. Agricultural IOT involves real-time collection of agricultural production environment data, real-time monitoring of crops, growth status judgment of crops and improvement of the growth environment of agricultural products.A complete IOT system should involve all aspects of crop growth,the system is Based on the collected data to fit the environmental change curve.Combining the growth status of crops, we can learn the best growth environment of crops(CBGE),finally, the crop growth model(CGM) is constructed according to the growth cycle of the crop.On this basis, fine farming of crops can be realized, remote control of environmental changes can be realized, and then the purpose of intelligent tillage can be achieved.

Key words: Internet of Things; data collection; parallel computing; column Store; big data technology

物聯网可以理解成物与物相连的互联网,它利用互联网技术把物和人联系在一起,使人与物、物与物相关联在一起[1-2][4-5]。目前,物联网已经渗透到了各行各业,智能家具、智慧医疗等都映射出了物联网的影子。农业物联网则是指把农业生态系统中的动植物个体、环境因素、生产资料等联结在一起,实现对农业对象和过程智能化识别、定位、跟踪、监控和管理的一种网络[1][5]。国外的农业物联网主要应用于农业资源、环境、生产过程、农产品安全等领域的管理[3]。而我国农业物联网则主要应用于大田种植、设施园艺、畜禽养殖、水产养殖、农产品物流等领域[3][5]。目前,农业物联网也存在着不同系统的应用,但是这些系统往往存在数据存储扩展困难等问题[2][5][6-7],为了应对数据不断增长的物联网应用,有必要拓展数据的存储结构。另外,相对于传统关系数据库而言,列式数据库更适合做分析。

系统基于可横向扩展的列式数据库和大数据计算框架来进行设计实现的。基于大数据技术实现物联网的功能,不仅可以为我们提供几乎没有限制的数据存储功能优势,还可以对海量的农作物生长环境数据进行快速的分析,无论是分析它的生长模型还是对农作物做其他的研究都离不开大量的数据基础,而大量数据的分析必然造成时间上的大量消耗,并行计算为我们提供了解决方案,它的计算效率胜过传统方案的百倍千倍,所以利用大数据技术实现农业物联网有着重要的意义。

1 建立列式数据库

Hadoop是目前使用最广泛的大数据技术,它允许开发人员使用简单的编程模型通过计算机集群进行大数据的分布式处理的计算框架。它可以将服务器从单台扩展到上千台,每台服务器都可以提供本地的计算和存储资源[8]。

相对于传统关系型数据库列式数据库的读取效率明显要更高,它不再需要像关系数据库一样为读取某个字段的值而扫描整个表结构的数据,如果我们需要读取某列的数据只需要读取此列的数据就可以了。另外,在扩展方面它也可以很简单只要在Hadoop集群中添加计算机节点然后再添加相应的服务就可以有效的扩展它的存储容量,这使得它获得几乎无限容量的存储能力[8-10]。

系统采集的数据主要来自传感器,我们会将传感器上传送的数据转换成可识别的信息存储到HBase数据库中。endprint

1.1 数据库详细内容

HBase是列式数据库,所以与传统关系型数据库的设计模式不同,我们将按照列式数据库的设计方法来进行数据库设计。目前,列式数据库的设计还没有固定的模式,系统将根据实际需求对数据库的列族、列、行健进行一定的设计。

(1) 列族,实际种植环境信息(如温湿度)并不能以一个传感器的数据来决定,根据采集区域范围大小需要多个传感器的数据共同来决定,所以列族名将由地区、地块和农作物本身共同来决定的。编码如下:

地区采用实际的地名作为编码的一部分,实际上都会采用区域编号来代替,例如,对于大棚实验田就会分为A区、B区等。考虑到传感器覆盖区域的数量,我们将一定数量的传感器所覆盖的区域当做一个地块,对于大棚来说,一个大棚就可以当成一个地块。最后是农作物的品种标记,用来标识采集地块类的农作物,一般将同一种农作物放在同一个地块中,这样采集的数据参考意义更大。

(2) 列,列将由传感器的标识来决定。考虑到同一个地块将采集多种数据,而每一种数据将在地块的不同位置采集多次。我们将同一个地块中的所有同类型传感器的数据都放在同一个列族当中,这有利于后期的数据挖掘和统计分析。例如,一个大棚(将一个大棚当做一个地块)中包含上下各6个温度传感器,则一个地块中同一时间可以获得12个温度类型的数据,这些数据都会被放到一个列族中存储起来。

(3) 行健,环境数据的采集是连续的,如果不间断的采集,即使一天的数据量也是可观的。当然,这是没有必要的,所以系统将定时的对环境数据进行筛选存储。系统实时的接受传感器传输的环境数据信息并将这些数据缓存到系统的内存中,当数据达到一定的数据量时(如64M)系统将激活数据分析方法对内存中的数据进行筛选,系统将筛选出发生变化的时刻数据,当然,采集的数据可能随时都在发生微小变化,系统将设计数据变化的差值(如变化程度不大于1摄氏度就不算发生变化)来控制数据的采集数量。

另外行健影响这HBase数据库的执行效率,一般都将行健的命名尽量的取短一点的值,本次将以精确到秒的时间来作为行健。

1.2 数据采集入库

传感器采集的数据是主要影响农作物生长的环境信息数据,诸如土壤溫湿度、空气温湿度、光照强度等农作物生长环境参数。传统的种植方式,无法对这些生长环境参数进行实时监测与定量、定性分析。物联网改变了农业生产的模式,我们将各类环境数据采集并存储到HBase中(如图1),这些数据将是构建农作物生长模型或分析农作物的重要数据支撑。

2 农业物联网系统功能介绍

农业的发展越来越偏向机械化和智能化,为了构建智能化的农业生产模式,农业物联网系统还需要提供必要的智能化生产功能应用。根据现有的需求和前人的研究系统暂时确定了五项功能模块[11-13]。这五项功能将农作物生长环境、生长状况、生长模型等直观的提供给使用者,使用者可以根据这些信息去培养、管理自己的农产品。

农业物联网应用系统主要由数据采集、数据可视化、实时监控和统计分析等模块组成。数据采集功能主要是将传感器信号转换成可识别的文字或数字信息;数据可视化功能主要是将数据以生动的形式展示出来供使用者查看浏览;实时监控则是实时的传递地块农作物的视频信息,可以实时的查看农作物的生长状况。

2.1 环境信息实时监测

将实时采集的环境信息较为美观的展示出来,可以为使用者带来较好的感官体验。最重要的也是实时的监测农作物生长环境的变化,在必要的时候可以根据这些数据信息的反馈做人工的干预,比如缺水就可以通过系统控制设备喷水实现为农作物添加水分(如图2所示)。

2.2 地块标注和实时监控

将不同的地块在地图上以矢量图来标注出来,这样可以直观地了解我们地块的区域范围。在地块周围安装监控摄像头,摄像头实时捕获地块内的画面。使用者可以远程访问来观看地块的实时画面。既可以帮助生产管理者远程了解作物的生长状况,也可以帮助农业专家通过远程监控画面了解作物的健康状况,解决种植中的病害难题(如图3所示)。

2.3 环境变化趋势分析

将不同的环境信息数据根据时间的变化拟合出它的变化趋势曲线(ECC),这样可以方便我能观察它的变化趋势以及合理的预测将来短时间内的变化。根据作物的生长情况拟合出最适合农作物的生长环境(CBGE)曲线(如下图4所示)。拟合环境变化趋势图之前需要对数据做一些必要的处理,因为HBase自身并没有自带的挖掘函数,此时MapReduce计算框架就起到了作用,我们利用MapReduce计算框架去处理分析HBase中的数据,再可视化到实际的图表中,此处我们用到了数据驱动的echarts作为大数据量的可视化图表。

2.4 构造生长模型

根据农作物的生长环境和自身的生长状况构造农作物生长模型(CGM)[14-17],此模型可以根据农作物的生长环境大致判断农作物的生长周期,可以为农作物的播种、施肥、收获做系统性的建议(如下图5所示)。

2.5 联网设备控制

系统具有每天多个时间段的独立目标温度、目标湿度、目标风速、目标风向设定,可以人为控制各个设备的开启与关闭,对于大棚内的精细化种植作业来说可以做到为环境参数作实时的改变和控制,对于野外来说则可以控制施肥洒水等设备(如下图6所示)。

3 总结

本文阐述了基于大数据技术设计实现了农业物联网应用系统,系统基于可横向扩展的列式数据库以及能够在海量数据中进行并行计算的计算框架实现了采集农业生产环境数据和构造农作物生长模型以及其他功能。

系统根据采集的数据对农作物的最佳生长环境进行拟合,并在此基础上构建农作物生长模型。可以根据农作物的生长环境大致判断农作物的生长周期,可以为农作物的播种、施肥、收获做系统性的建议。系统结合大数据技术实现了对农业生产模式做了极大的改变,当然,目前广泛推广还是比较困难,但是,农业生产的智能化必然会是发展的大趋势。endprint

参考文献:

[1] 赵璐,杨印生.农业物联网技术与农业机械化发展[J].农机化研究,2011,08:226-229.

[2] 苏美文.物联网产业发展的理论分析与对策研究[D].吉林大学,2015.

[3] 王家农.农业物联网技术应用现状和发展趋势研究[J].农业网络信息,2015,09:18-22.

[4] 熊本海,杨振刚,杨亮,潘晓花.中国畜牧业物联网技术应用研究进展[J].农业工程学报,2015,S1:237-246.

[5] 葛文杰,赵春江.农业物联网研究与应用现状及发展对策研究[J].农业机械学报,2014,07:222-230+277.

[6] 宁焕生,徐群玉.全球物联网发展及中国物联网建设若干思考[J].电子学报,2010,38(11):2590-2599. [2017-09-01].

[7] 许世卫. 我国农业物联网发展现状及对策[J]. 中国科学院院刊,2013,28(06):686-692.

[8] Apache.Hadoop官網[EB/OL].http://hadoop.apache.org/

[9] 景晗,郑建生,陈鲤文,许朝威. 基于MapReduce和HBase的海量网络数据处理[J]. 科学技术与工程,2015,15(34):182-191.

[10] 冯晓普. HBase存储的研究与应用[D].北京邮电大学,2014.

[11] 陈一飞.农业复杂大系统的智能控制与农业物联网关系探讨[J].农业网络信息,2012,(02):8-12.

[12] 文燕.基于Hadoop农业大数据管理平台的设计[J]. 计算机系统应用,2017,26(05):74-79.

[13] 李瑾,郭美荣,高亮亮.农业物联网技术应用及创新发展策略[J]. 农业工程学报,2015,31(S2):200-209.

[14] 陈新月,赵建涛,张静.国外作物生长模型研究[J].吉林农业,2015,(17):115-116.

[15] 赵青松,陈林,孙波,朱艳,姜海燕. 基于Hadoop的云环境下作物生长模型算法的实现与测试[J]. 农业工程学报,2013,29(08):179-186.

[16] 张红卫,陈怀亮,周官辉,葛红梅.农作物生长动态监测技术综述[A]. 中国气象学会.第27届中国气象学会年会现代农业气象防灾减灾与粮食安全分会场论文集[C].中国气象学会:,2010:9.

[17] 王伟,黄义德,黄文江,李存军,王娴. 作物生长模型的适用性评价及冬小麦产量预测[J]. 农业工程学报,2010,26(03):233-237.endprint

猜你喜欢

并行计算数据采集大数据技术
云计算中MapReduce分布式并行处理框架的研究与搭建
并行硬件简介
基于开源系统的综合业务数据采集系统的开发研究