农林业病虫害监测管理系统的制作方法

文档序号:14574797发布日期:2018-06-02 01:25阅读:266来源:国知局
农林业病虫害监测管理系统的制作方法

本发明应用了物联网技术,涉及系统集成、软件开发技术领域,尤其涉及硬件集成设计,应用于数据采集、自动控制系统;服务器设计,应用于远程控制、数据交互、多点访问、图像识别;APP开发,应用于终端设备中。



背景技术:

物联网技术在农林业的应用上也在不断的普及发展,已经有了相应的成果,但是现阶段其更多的只是采集一些气象数据,并存储,功能相对比较单一,并且观测农林作物生长情况都需要亲自去作物地,还会受到天气环境的影响。而本系统有相对丰富的气象数据,融合了多种功能,能够保证多用户远程控制多点的摄像头进行不同高度的移动,同时能够远程控制摄像头多角度(水平360旋转,垂直方向上下各90度旋转)的调整视角,还支持移动终端的联网查看实时视频数据,以及各气象数据,并能根据不同的查询条件显示不同的信息,绘制对应的折线图或者柱形图,同时带有图像识别功能,自动识别图片中的虫害,达到预警效果。更有效的实现了对农林作物的远程监测分析,极大地方便了观测者,缩减了工作时间,提高了工作效率,真正实现了对农林作物监测的智能化。

所以,本发明重在实现系统功能的全面化,实现多对多的远程监控,图像识别预警,达到观测的方便化、简单化、智能化。



技术实现要素:

本发明解决的主要技术问题是集合多种气象数据,实现远程多点的控制摄像头的移动,远程多点视频监控,数据的多种显示方式,图像识别,权限设置,移动终端的开发。

为解决上述技术问题,本发明采用的技术方案是:按照系统的三大模块来进行设计。对于硬件设备端,首先是在设备的选型上要满足参数达到国家的指定标准,并且能够在-30~+65摄氏度的温度以及湿度为0~95%RH下正常工作。使数据采集器与各气象采集器相连,通过添加和减少连接在数据采集器上面的采集器可以方便的增加或者减少采集器的种类和数量,数据采集器将所有获得的数据通过RS485协议传输到嵌入式控制板,嵌入式控制板同时与电机驱动器相连接,产生使能、转动方向、PWM信号,通过各信号按照特定的流程工作,控制驱动器驱动两相步进电机转动,根据服务器传输过来的高度数据来控制产生信号的时间,使摄像头移动特定的距离。嵌入式控制板同时还连接着无线通信模块和工业路由器,控制板会根据与服务器的网络连接情况连自动选择是通过无线模块与服务器通信还是通过网络(有限网络和无线网络,根据硬件采集端安装地的具体情况设定控制板上设定的关于工业路由器WAN口有无外部网线连接的开关的高低电平来判断)与服务器通信。如果网络连接正常,会优先考虑网络通信,否则才选择无线通信。当然视频图像也可以只使用网络进行通信,只是一旦使用到无线通信模块就要求服务器与设备的距离在5000米的范围内,否则将无法进行通信(使用网络通信时与服务器就无距离的限制)。无线模块与控制板的串口相连,通过串口来进行通信。同时摄像头也连接在路由器上面,通过网络与服务器和客户端进行通信,传输视频流。同时为了防止设备处由于各种非人为因素导致太阳能电池板电力不足,进而使硬件采集端供电不足,不能采集到气象数据,在设备总电源处连接了UPS无间断电源,保证设备的正常工作。

在外网网络畅通情况下,服务器端能够通过网络接收客户端发送过来的请求,进而根据具体的请求做出响应。尤其是在客户端访问服务器时,在客户端上根据多处设备编号选中需要查看或者控制的设备,然后填写对应的控制信息,将信息发送到服务器,服务器就会根据获取到的数据给硬件设备端发送指令,此时优先选择通过有线网络给设备传输数据,在服务器与设备的网络连接不正常时会自动切换到无线通信,并将客户端发送过来的控制信息通过服务器转发给硬件采集端嵌入式控制板,被选中的硬件采集端控制板就会进行相应的操作。在外网网络不通时,只能进行局域网内的访问。同时采用的摄像头是网络摄像头,只要是网络正常,就能通过给摄像头设置的IP地址,以及在路由器中设置好的映射,直接访问摄像头。输入不同的摄像头的IP地址和端口号,就能访问到多点不同的摄像头。同时服务器中还包含了数据库,通过硬件设备采集到然后传输到服务器并保存在数据库中的数据,方便服务器从数据库中获取数据,传输到客户端。对于视频图像,服务器会对显示窗口中的视频进行截图,所截取的图像将用于后台程序进行图像自动识别,识别到有病虫害后实现预警显示,会将分析结果显示在界面上,起到提示作用。服务器端还有各种数据的分类显示,可以根据设备编号、日期、采集器编号等中的一种或者几种进行查询,并根据需要可以选着表格、折线图、柱状图进行显示。同时,为了防止用户随意的远程控制,需要对权限进行设置,只有特定的用户才具有远程控制权限,其余用户只能让其具有查询权限,这在用户登录时就会对身份进行认证,服务器并根据登录的用户名和密码为客户端提供相应的服务。

客户端的开发更好的实现了在网络全面发展的当今,用户能够随时随地的通过手机远程查看多处的视频图像,方便的实现了PC端所能实现的各种功能。APP就是将PC端的功能在客户端上实现,主要是通过与摄像头直接进行网络通信,显示实时视频图像,而对于其他功能主要是通过与服务器进行通信,通过服务器获取查询数据,并显示在界面上,同时也是通过给服务器发送相应的控制指令,由服务器发送到硬件设备端进而实现远程控制。除了视频数据,客户端的所有数据以及权限认证都是通过从服务器端获取的。

本发明是一套系统,可以远程监测农林业病虫害图像信息,对图像进行图像识别,同时可以获取各类气象数据信息,实现多对多的访问。本系统集成性高,功能完善性好,从硬件采集端到服务器接收端,再到客户端(远程PC端和手机APP),构成一个相对完善的整体。实现了客户端能够通过服务器远程控制硬件采集端摄像头上下移动以及获取气象数据。同时通过服务器,可以实现多对多的控制,即多用户可以同时访问服务器控制多点的硬件采集端。本系统包括如下三大部分:硬件采集端、服务器接收端、手机客户端。

一、硬件采集端:主要包括嵌入式控制板、多类气象传感器(风速、风向、温度、湿度、大气压、降雨量、土壤温度、土壤湿度、总辐射、日照时数)、数据采集器、电压转换器、固定摄像头、云台摄像头、电机、电机驱动器、滑轨、工业路由器、限位器、太阳能电池板、无线模块。

(1)所有的硬件采集部件都能够保证在-30~+65摄氏度的温度下正常工作,各气象传感器参数指标都达到国家标准的精确度。

(2)云台摄像头能进行水平0~360度的旋转摄像,垂直方向上下各90度(即垂直180度)的摄像。并且云台摄像头可以在嵌入式控制板控制下沿着滑轨进行上下移动。而控制指令是远程PC端或者远程移动终端(手机APP)向服务器发送的指令,并通过服务器系统转发到硬件采集端嵌入式控制板,这样实现了远程控制摄像头的上下移动。同时在滑轨的底部和顶部装有限位器,当摄像头到达底部或者顶部时就产生中断,防止摄像头继续向下或者向上移动,起到保护作用。

(3)各个气象传感器与数据采集器接口直连,最多一次可以连接11种不同的气象传感器,即上面给到的参数可以一次全接到数据采集器上。想更换成其他的气象传感器只需要将对应传感器接到数据采集器接口上即可。数据采集器将各个气象传感器采集到的数据整合到一起,通过RS485接口与嵌入式控制板相连,将数据传输给嵌入式控制板,控制板程序会自动将数据在SD存储卡中进行数据的备份;

(4)嵌入式控制板连接电机驱动器,控制步进电机转动,同时带动云台摄像头在滑轨上上下移动,可以观察农林作物不同高度的生长情况以及病虫害情况。嵌入式控制板通过控制转速和频率,使步进电机能够精确移动步长为1厘米,误差不超过1毫米。嵌入式控制板通过有线网络或者无线网络接收服务器接收端发送过来的指令,控制摄像头进行上或下移动具体的距离。

(5)由于远程PC端和移动终端APP都是通过发送请求给服务器,服务器再做出相应的响应并给硬件采集端发送指令,进而控制硬件采集端,故主要需要解决硬件采集端与服务器的通信,以及客户端与服务器的通信,就可以实现远程控制。硬件采集端与服务器的通信有3种方式,此3种方式共存,有优先级,只有当高优先级的方式存在异常时才选择优先级次之的方式进行通信。3种方式如下:

1、无线模块通信方式。利用无线模块进行硬件采集端与服务器的数据交互,由于无线模块受到距离的限制(硬件采集端的无线模块发送端与服务器串口上的无线模块接收端的直线距离在5000米内),需要将服务器放在硬件采集端一定的距离范围内。服务器通过连接在串口上的无线模块发送控制或者读取指令给硬件采集端的无线模块,嵌入式控制板分析接收到的指令对电机进行控制(或者将各类采集器采集到的数据通过无线模块发送到服务器接收端无线模块,进而被服务器存入数据库,具体情况根据是控制指令还是读取指令)。只有当另外其他两种通信方式出问题时才会选择此通信方式。此方式解决网络信号不通畅等突发情况,保证了接收服务器中气象数据的实时性。

2、有线网络通信方式。此方式避免了无线模块通信方式存在的与服务器的距离问题,没有距离限制。硬件采集端的嵌入式控制板与工业路由器通过网线直连,然后路由器的WAN口通过网线连接到交换机或者外部网络,这样就可以实现与服务器的有线网络通信。服务器通过网络将控制或者读取指令发送到硬件采集端嵌入式控制板,按照控制板按照TCP/IP协议读取相关数据,进而控制电机或者将各类传感器数据再通过网络发送到服务器,服务器将数据解析出来存入数据库,方便PC端或者移动终端APP的查询。此方式的优先级最高。

3、无线网络通信方式。此方式也避免了无线模块通信方式存在的与服务器的距离限制问题。由于硬件采集端安装在农田或者林间,位置相对比较偏僻,可能没有网线连接过去,这样就可以使用无线网络通信方式。嵌入式控制板与工业路由器直接用网线连接,工业路由器中插上手机SIM卡,手机卡保证了可以连接上网络,由于其为内网,不能外网直接访问,此时需要到网上申请内网穿透相关的账号。工业路由器中都内置有内网穿透的功能,在工业路由器上登录并绑定内网穿透账号,将连接到工业路由器上控制板或者摄像头对应的IP地址和端口号与网上申请账号中的域名和端口做好映射,这样就可以在外网通过网上申请账号中映射的域名和端口访问对应的硬件采集端。然后其和服务器的通信与有线网络通信方式和服务器的通信一样。此方式的优先级别次于有限网络通信方式,在检测控制板上设定的关于工业路由器WAN口有无外部网线连接的开关出现低电平信号时会自动切换到此方式。

(6)由于硬件采集部件安装在野外,供电采用了双电源。首先使用的是太阳能电池板给设备供电,保证采集部件的正常工作。遇到突发情况(如狂风暴雨的天气)时太阳能电池板供电不足,此时会启用UPS无间断电源,保证采集端所有的硬件采集部件的正常工作,以及采集到实时的数据。

二、服务器端:包括数据库管理系统、后台管理软件、图像分析。

(1)服务器端主要是用于发送电机控制指令,以及接收硬件设备发送过来的气象数据,并将数据保存在数据库中,以便为之后的数据分析提供相应的数据。服务器端根据选择的远程端设备,发送电机控制指令到嵌入式控制板,控制板进而控制云台摄像头按照设定的距离进行上下移动,根据从多点安装的硬件采集端中选中需要的硬件采集端安装点进行远程控制。

(2)访问系统需要进行用户身份验证,不同的用户拥有的权限不一样,这样避免了一台设备多人随意控制的情况。登录服务器时,后台程序会从数据库中去匹配是否有相同的用户明和密码,以及在业务访问时,后台程序会判断用户的权限,进而进行下一步的操作。只有具有远程控制权限的用户才能进行远程控制,否则一般用户只能具有数据查询权限。

(3)首先是视频显示界面,通过选择或者输入对应摄像头的IP地址和端口、点击登录、开始浏览等一些列操作可以查看远程多处硬件采集设备端中选定的摄像头所拍摄的视频图像。同时此界面中有设置截图和保存截图时间间隔的功能,会根据设置的时间间隔将视频图像在此时刻的图像进行截图,并保存到指定的位置,截图的图片将会被服务器后台程序进行图像识别,达到预警效果。界面中有多个显示窗口,可以显示不同摄像头的视频图像。同时摄像头角度控制按钮可以控制云台摄像头进行水平360度的旋转,垂直方向上下各90度(即垂直180度)的转动,基本处于无死角的拍摄,同时配合着摄像头能整个上下移动,以及聚焦等功能,可以看到农林作物多部位、多角度的图像。同时界面中能够设置相应的指令发送给硬件设备,让其进行相应操作,实现远程控制。

(4)多用户远程访问一点或者多点硬件采集端:多个PC端或者手机APP移动终端用户通过服务器远程控制一套硬件采集端的摄像头、电机等器件时,当多个远程端用户向服务器发送请求,服务器会判断多个用户是否访问的同一套设备,如果是,服务器会根据请求的优先顺序让最先访问的用户进行远程控制操作,等其操作完毕后其他的用户才能进行远程操作,这样避免了多用户同时远程操作一套设备出现的混乱现象;如果不是操作的同一套设备,服务器会创建多个线程,让各用户远程操作其需要访问的设备,这样实现了多个用户同时在线访问不同的远程硬件采集端的摄像头、电机等器件。

(5)其次是显示数据界面,可以根据设备号、时间、传感器等条件查看不同区域不同气象传感器的数据,多种查询方式混合查询。还可以选择不同的方式显示,可以是数据表格、折线图、柱形图。折线图和柱形图会将实际数据显示出来,同时还会显示出最高和最低的数据。同时在数据显示界面中会有预警显示,系统后台分析数据库中截图图像时,若分析出发生病虫害,会将分析结果显示在界面中,实现预警效果。

(6)服务器端对视频图像进行截图后,会根据用户选定的植物种类进行图像识别。本系统中主要是对大豆植物虫害进行了图像识别分类。通过从视频显示窗口中截取的图像为图像识别提供数据源。使用已经训练好的模型对大豆图片进行检测,分类出病虫害的具体种类,从而做到提早预防,提早去除虫害。本模型基于谷歌公司的Inception-v3模型改进而成(保留训练好的Inception-v3模型中所有卷积层的参数,将最后一层的全连接层去除,新添加一层卷积层和一层全连接层),通过迁移学习的方法(迁移学习所需要的训练时间和训练样本数要远远小于训练完整的模型,在没有GPU的普通台式机或者笔记本电脑上,可以很轻松的训练迁移学习的模型,并且效果也很好)在利用公开数据集ImageNet上预训练的Inception-v3模型做基本框架(由于ImageNet数据集里包含的有虫子的类别,所以使用ImageNet预训练的模型可以很好的解决模型的冷启动问题),然后在使用获取到的虫害数据集进行监督学习以解决病虫害图像分类的问题。本模型对于大豆卷叶螟,大豆食心虫,豆天蛾,豆芫菁四类虫害做分类,可以对此四类虫害进行识别,一旦识别到虫害,就会在系统界面上做出显示。

(7)最后是权限管理。为了防止不同的用户登录系统后都随意的控制各处硬件采集端设备进行摄像头的上下移动操作时出现混乱现象,需要对不同的用户授予不同的管理权限,在此界面中管理员可以修改各用户的访问权限,方便其他用户可以进行不同的远程操作。

三、手机客户端:主要包括视频显示界面、数据显示界面、权限管理界面。

为了方便随时随地都能查看对应硬件采集端周边农林作物的生长环境、生长状况等,专门开发了支持移动终端的APP。支持现在主流的IOS系统和安卓系统的移动终端。移动终端功能和服务器端功能一样,主要是通过与服务器进行网络通信,从服务器获取各类的气象传感器数据,同时将硬件的控制指令通过交互给服务器进而控制远程硬件采集端电机等器件。而访问摄像头是调用相关的SDK,直接通过摄像头的IP地址和端口号获取摄像头拍摄的视频图像,以及对摄像头角度的控制。

此系统通过服务器实现远程控制硬件设备,控制摄像头上下升降,并能多角度的拍摄视频图像,实现多点监控,多用户访问。充分的体现了智能化,大大的减少了农林业专家必须下到田地去观测的问题,并且随时随地的进行查看。同时预警部分也提醒人们及时做出相应的措施。获取的大量数据为以后的农作物最优生长环境的分析等提供了充分的数据基础。

附图说明

图1:整体结构图

图2:硬件控制程序流程图

图3:服务器主界面图

图4:数据显示表格图

图5:数据显示折线图

图6:数据显示柱形图

图7:权限管理图

图8:算法模型框架图

图9:算法训练图

具体实施方式:

(1)首先是绘制系统结构图如图1所示,根据系统的结构图分模块进行设计,每部分根据对应功能的流程图进行软件的开发设计。

(2)对于硬件接收端,首先是将各个传感器与数据采集器直连,数据采集器通过RS485接口与嵌入式控制板直接相连,数据采集器将获取到的数据整合到一起,并通过RS485协议传输到控制板,控制板将其保存到SD卡中,通过与控制板的LWIP接口相连的网线或者与控制主板串口相连的无线模块将其上传到服务器端,并保存在数据库中。在硬件上,控制板还通过与电机驱动器相连来控制步进电机的正反转,在选择电机时需要考虑电机的静力矩和转动力矩,查看是否能够达到要求。云台摄像头连接在滑轨的滑块上,电机通过联轴器与滑轨相连,通过联轴器带动滑轨的轴转动,从而间接带动摄像头移动。摄像头直接与路由器相连,通过网络直接根据IP地址和端口号访问。

(3)控制板控制程序的设计流程图如图2所示。首先是对各部分功能的初始化,然后主要的功能都放在一个循环里面。循环里面不停的监测是否接收到了来至服务器的指令,收到指令后根据指令分析是控制指令还是获取数据指令,如果是控制指令就通过控制驱动器控制步进电机转动,如果是获取数据指令就将通过有线网络或者无线模块将数据发送到服务器。采用网络通信时:控制板接收到服务器通过网络传输来的指令,分析指令数据。首先判断指令数据部分是需要控制摄像头升降还是需要控制板将采集到的传感器数据发送到服务器。如果是升降控制指令,控制器会产生对应的PWM控制信号,控制摄像头移动指令中设定的距离,否则控制板就通过LWIP的RAW编程方法读取控制板获取到的采集器数据通过网络将数据传输到服务器。采用无线通信时:控制板通过串口与无线模块相连,接收服务器串口发送过来的指令,分析指令数据。首先判断指令需要控制的是哪一套嵌入式控制板,其次判断指令其余部分需要控制摄像头升降还是需要控制板将采集到的传感器数据发送到服务器。如果是升降控制指令,控制器会产生对应的PWM控制信号,控制摄像头移动指令中设定的距离,否则控制板就通过串口将数据传输给无线模块,然后通过无线模块将数据发送个给服务器端的无线接收模块。

(4)硬件设备都是安装在室外,可能会出现暴风雨等天气导致太阳能电池板店里不足,这样会导致气象数据采集的丢失,故添加了UPS无间断电源模块直接接在设备的电源接入处,保证所有设备在非人为因素下的正常运行。同时也需要在立杆上安装避雷针,保护设备避免遭受雷电的影响。

(5)服务器主要是对数据的接收、存储、查询、修改操作,同时后台程序会在每个用户访问服务器时都创建一个服务器对象,通过服务器对象每个访问用户都能对服务器进行访问,这样可以让多个用户同时访问服务器,实现多点访问。在服务器设计开发中调用了摄像头的SDK,根据摄像头的IP地址和端口号与摄像头进行TCP连接,远程读取到摄像头的视频数据,通过调用SDK中的函数实现视频流显示以及截图功能。根据设置的保存地址将截图保存在对应文件中。后台程序设计中,直接创建一个文件,将连接数据库所需要的登录用户名、密码、数据库驱动、访问服务器的URL等连接信息放在.properties文件中,同时创建一个数据库连接库类,用来从信息文件中读取相应的用户名与密码等信息,并设计与数据库建立连接以及断开连接等操作方法,这样每次访问数据库时都只需要通过此类调用对应方法即可。同时对于不同的数据库、数据库用户名、密码,只需要修改配置信息文件,有很好的移植性。服务器端可以直接通过网络通信将指令传输到选中设备号或者IP地址的设备端,进行远程控制,也可以通过服务器端串口进行无线广播,让设备端接收到数据,设备端根据数据中的编号标志位判断是否是给其发送的数据。网络通过IP地址的不同实现了多点访问控制终端的设备,无线通信通过服务器端广播,设备端匹配编号进而实现了多点访问设备。在界面的菜单栏中可以进行功能的选择,气象数据显示主要是根据所选中的查询条件去搜索数据库中的数据,默认显示成excel表格的形式。如果选中折线图或者柱形图,就会调用相应的JS文件,JS文件主要功能是显示成折线图或者柱形图,将查询到的数据去替换JS文件中需要的数据就可以显示对应的图形,用于后期的数据分析。同时在权限管理界面,能显示对应用户所具有的权限,而管理员权限登录的可以显示出所有用户所具有的权限,对应的用户以及权限都存在于数据库中,只有具备管理员权限功能的用户才能够修改其他用户的各种权限,在界面上修改后后台代码就会修改数据库中对应的数据。

(6)为了及时了解到病虫害,服务器在后台对截取到的图像进行了图像识别。使用已经训练好的模型对大豆图片进行检测,分类出病虫害的具体种类。模型是基于Inception-v3改进而成,通过迁移学习的方法在利用ImageNet数据集上训练好的Inception-v3模型来解决病虫害图像分类的问题。由于在实验的过程中数据集的缺乏,和硬件设备的不足使其重新训练一个深层的网络造成干扰。而迁移学习所需要的训练时间和训练样本数要远远小于训练完整的模型。在没有GPU的普通台式机或者笔记本电脑上,可以很轻松的训练迁移学习的模型,并且效果也很好。由于ImageNet数据集里包含的有虫子的类别,所以使用ImageNet预训练的模型可以很好的解决模型的冷启动问题,根据论文DeCAF:A Deep Convolutional Activation Feature for Generic Visual Recognition中的结论,可以保留训练好的Inception-v3模型中所有卷积层的参数,将最后一层的全连接层去除,新添加一层卷积层,和一层全连接层。在原模型中最后一层全连接层之前的网络称为瓶颈层(bottleneck).将大豆虫害的图片通过训练好的卷积神经网络直到瓶颈层的过程可以看作是对图像进行特征提取的过程,在瓶颈层之后新添加一层卷积层将其参数随机初始化,作为特征提取层,新添加一层全连接层将其分配5个神经元,作为最后的输出层参数随机初始化,在网络训练的时候只需要关注新添加的这两层参数,通过预先标定的数据集进行监督学习,使其网络能够很快的收敛从而达到很高的准确率。网络参数,输入:图片为224*224*3的规格;激活函数:1、中间特征提取层:Relu,2、分类层:softmax;损失函数:cross entropy。使用google开源深度学习框架Tensorflow进行训练,网络最后达到的分类效果识别率为91.8%。优化方式:反向传播。

(7)为了方便随时随地的远程查看设备拍摄的实时视频图像,以及最新的各类数据,在移动终端上开发了相应的APP。APP查看实时视频部分主要是调用了摄像头提供的SDK,通过IP地址和端口号能够访问到对应的摄像头,查看其实时视频数据,同时SDK中有控制摄像头旋转的方法,界面相应控件的后台代码调用的就是对应的方法。其余的数据显示,权限管理等主要是客户端通过网络通信向服务器发送请求,服务器收到请求后根据具体的完成相应的查询操作,并将查询到的数据再通过网络传输到客户端,客户端将数据显示在界面上。客户端功能的设计都是根据PC端的来设计的,实现的功能也是一样,主要解决的就是只要是在有网络的地方都能方便的访问到各设备,并进行远程控制。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1