陈秀成 , 黄庆梅 , 陈晓懿 , 陈婉滢
(1.华南农业大学,广东 广州 510000;2.广东恒南科技集团有限公司,广东 清远 511500;3.清远市农业企业家协会,广东 清远 511500)
20世纪70年代,欧美等发达国家开始将现代微电子技术与控制技术和信息技术融入农业机械装备。发达国家的发展历程表明,从农业机械化到数字化、自动化和智能化是农业生产的必然发展趋势[1]。
农机信息化是农机管理工作的重要组成部分,是反映农机化水平的重要标志[2]。农业机械化是实现农业生产托管服务的重要抓手[3]。经过几十年的发展,我国的农业机械化正从农机2.0向农机3.0发展。农机3.0是农机发展从全到好的阶段,其特点是用信息技术提升农机化水平,融合现代微电子技术、控制技术与信息技术,推动农业机械装备向数字化、信息化、自动化和智能化方向快速发展[4]。
在推动我国农业机械化向全程全面机械化方向发展的进程中,农业生产托管服务扮演着重要的角色[5]。但在农业生产托管服务工作的推进中,农机服务的信息化、智能化和共享化等方面仍存在一些亟待解决的问题[6]。
与张悦[7]研发的基于卫星定位的农机作业管理系统、周生龙[8]研究的在电子地图环境下实现了作业质量监测和作业面积的计算、王猛等[9]提出的农机多机协同作业的相关解决方案、朱德海等[10]研究的一种基于农机轨迹和地块格网化实时计算农机有效作业面积的方法、黄鹏程等[11]研究的一种基于北斗卫星定位行驶轨迹的农机作业面积计算方法、张继生[12]研究的农业用地的面积测量方法、韩旭[13]进行的“互联网+”农业组织模式及运行机制研究、周快快[14]对基于Web的长沙县农业信息共享平台进行的研究和广州市健坤网络科技发展有限公司[15]开发的广东省农机信息化服务平台等相比,本研究重点在于促进农机服务作业的“农田”“农机”和“农机手”三大要素的相互融合,以提高农机服务的效率、农户与农机手之间的互信并促进农机与农机手的分合操作,实现农机服务的“脱图”服务面积和费用计算,以及服务数据“脱图”通用轨迹回放与永久性记录的农机服务的低成本高通用的信息化终端。同时,实现农机手与农机的操作和农机手、农机和土地的“人、机、地”作业记录和作业记录轨迹的复用。
农机服务信息终端系统由“脱图”农机作业信息管理终端管理、安保控制模块、客户端访问系统等组成,农机服务信息终端系统总体示意图如图1所示。
图1 农机服务信息终端系统总体示意图
其硬件终端安装在农机或者农机具上,可实现农机和农机具的标识、共享管理、安全管理、状态监控、作业定位、拍照等过程记录和作业业绩测量等,也可以通过农机手登陆安装在农机或者农机具上的终端在作业时绑定作业农机,将农机手、农机、作业地块实时绑定,实现农机手的作业统计、田亩测量、提成计提和接受调机等工作。
其软件系统可以实现基于经度值和纬度值的“脱图”与“脱网”计算相应的农田面积,降低了终端运算资源的占用,大大降低了制作成本。每套制作成本可以控制在人民币150元以内,再加上人机交互终端,其总成本每套也不超过人民币280元,为其进一步推广打下了基础。
“脱图”农机作业信息管理终端分为两个版本,分别为纯定位数据传输版和带身份识别的农机共享一体机版。
1)纯定位数据传输版设备:纯定位数据传输版本主要由GNSS定位模组及天线1个、4G通信模组及天线1个、USB通信接口和外接电源模块等组成,“脱图”农机作业信息管理终端外观图如图2、图3所示。此版本的特点是结构简单,制作成本每套在150元以内,传输的数据结构简单,传输成本低,采用4G套餐。以中国移动为例,每年的费用不到人民币10元,将所有的数据通过TCP传输到服务器后,服务器进行端口监听、数据处理、数据运算和数据显示等,但需要外置电源进行供电。
图2 “脱图”农机作业信息管理终端外观图I
图3 “脱图”农机作业信息管理终端外观图Ⅱ
2)带身份识别的农机共享一体机。带身份识别的农机共享一体机版包含GNSS定位模组及天线1个、4G通信模组及天线1个、USB通信接口和外接电源模块、主板、单片机、储存模块、指纹识别模组、加密电子锁、安保控制模块(可选)、RFID电子标签、外接电源和机器开启所需的用具及相关物品的储物区,其外壳与人机交互终端共用,两者合二为一形成一体机。在降低生产成本的同时,将功能高度集中,形成带身份识别的农机共享一体机。
服务器端主要实现四个功能:1)开放端口,接收4G透传模块传输过来的数据;2)监听端口,并将接收到的数据存储到服务器数据库;3)进行字符串分析和拆分,通过分析,将不含有“000000”的数据拆分后保存到服务器对应的数据表中;4)数据运算与处理,接受客户端发送的请求,进行数据运算与处理,并将运算与处理的结果发送到客户端。
1.3.1 监听端口和接收数据
采用Python+DM8开发环境,开发程序以监听8088端口,接收定位终端仪发送的数据。服务器对应的域名:henboy.top,端口为8088,采用TCP协议,实现的代码如下:
接收的数据如图4所示。
图4 接收到的原始数据
1.3.2 数据处理和保存
对采集的数据进行数据分析,将经度值或者纬度值中有一个为“000000”的记录或者经度值、纬度值组成的数组为完全相同的记录集全部保存到如表1所示的表Pall中。将经度值和纬度值不为“000000”的值全部记录,以及经度值、纬度值组成的数组都不完全相同的记录,保存到如表2所示的表Pwell中。将经度值、纬度值组成的数组都完全相同的记录全部保存到如表3所示的表Pon中。
表1 数据表设计Pall
表2 数据表设计Pwell
表3 数据表设计Pon
“脱图”农机作业信息管理终端将基于经纬度系统的定位数据采集后,分别进行经度数据比对和纬度数据比对,分别取其最大值和最小值后,选取对应的定位的经纬度数据组,得到第一数组集。
将未被选取的定位的点的经度值与纬度值作和得数值a,经度值与纬度值作差取绝对值得数值b。数值a与上述经度与纬度的最大值和数值b与上述经度与纬度的最小值进行大小比较,将数值a大于或者等于经度值最大值或者纬度值最大值的,以及数值b小于或者等经度值最小值或者纬度值最小值的对应的点选取出来,其对应的经纬度的值的集合组成第二数组集。
将上述第一数组集与第二数组集的经度值和纬度值分别通过并集,选择并集的经度值或者纬度值对应的点的经纬度值组成第三数组集。
将动态增加获得的点的经纬度的经度值和纬度值分别作和得数值c,作差取绝对值得数值d。将数值c与第三数组集的经度值和纬度值的最大值分别进行比较,当其大于或者等于对应的经度数值的最大值或者纬度数值的最大值时,将数值d与第三数组集的经度数值或者纬度数值的最小值进行比较,当其小于或者等于对应的经度数值的最小值或者纬度数值的最小值时;或者将动态采集的点的定位的经度值和纬度值分别与第三数组集的经度值最大值、纬度值最大值和经度值最小值、纬度值最小值分别进行比较,当其经度数值或者纬度数值大于或者等于经度数值最大值或者纬度数值最大值时,或者其经度数值或者纬度数值小于或者等于经度数值最小值或者纬度数值最小值时,新增的点的经纬度值并集到第三数组集后组成获得第四数组集,循环上述操作,直至不再新增采集定位点。
通过第三数组集的定位点连直线成第一区域,计算第一图形的面积则为静态的作业面积数。通过第四数组集的定位点连直线成第二区域,计算第二图形的最大面积则为动态的作业面积数。
上述区域的面积可以采用Python的ComputeArea()进行“脱图”计算:其中data=“A(经度值a,纬度值a);B(经度值b,纬度值b);C(经度值c,纬度值c);D(经度值d,纬度值d);E(经度值e,纬度值e);F(经度值f,纬度值f);...;A(经度值a,纬度值a)”。
点A、B、C、D、E、F按图是顺时针的顺序,脱图的关系顺序为经度值最小值到最大值递增,然后由最大值到最小值递减,当经度值相等时,按纬度值升序排列。
具体代码为:
以纯定位数据传输版本为例,“脱图”农机作业信息管理终端按表2的数据格式通过TCP透传的方式向服务器的8088端口以每10 s一次的方式传输数据组,服务器端设计程序对8088端口进行监听,并将监听到的内容拆分后存入相应的数据表即可。发送的具体数据格式如下:
系统根据客户端的请求进行数据运算与处理,然后向客户端反馈相应的数据运算与结果。
1)作业面积计算。“脱图”农机作业信息管理终端将基于经纬度系统的定位数据采集后,通过所集采的数据,分别进行经度数据比对和纬度数据比对,分别取其最大值和最小值后,选取对应的定位的经纬度数据组,然后通过“脱图”农机作业面积等算法进行面积计算。
2)作业轨迹查询。通过客户端安装在农机设备上的机载农机作业信息管理终端ID,可以对相应的时间段、农机手等信息进行条件查询,将相应的信息记录集反馈给客户端,客户端根据作业轨迹播放的电子地图将标准的经度值和纬度值进行转换,并导入到相应的电子地图系统,进行轨迹回放和保存。
本研究不依赖电子地图、也不局限于不同的卫星定位系统,通过将获取到的经度值集合、纬度值集合等基本信息进行运算,从而直接计算得出作业面积,并以此为原理,开发了一套“脱图”农机作业信息管理终端及其管理系统,低成本地实现农业社会化服务的关键环节,即“农田”“农机”“农机手”的统一,以提高服务的效率和体验。
本研究在农机作业服务的计算中,对定点的经纬度值的边界密依赖程度较高,即需要农机作业时,对边角位的作业要求较高,这也是对农机实际作业质量的一种体现,对于正常的农机服务作业,其精确度基本满足要求。
本研究的农机作业信息管理终端可以用于对土地的定点的面积测绘,可以代替传统的农田测亩仪使用。