[发明专利]一种基于互联网的农业自动灌溉控制系统数据推送方法在审
| 申请号: | 201610904003.7 | 申请日: | 2016-10-17 |
| 公开(公告)号: | CN107959698A | 公开(公告)日: | 2018-04-24 |
| 发明(设计)人: | 马廷彦 | 申请(专利权)人: | 哈尔滨派腾农业科技有限公司 |
| 主分类号: | H04L29/08 | 分类号: | H04L29/08;G06Q50/02 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 150036 黑龙江省哈尔*** | 国省代码: | 黑龙江;23 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 互联网 农业 自动 灌溉 控制系统 数据 推送 方法 | ||
技术领域
本发明涉及一种基于互联网的农业自动灌溉控制系统数据推送方法,属于农业互联网技术领域。
背景技术
作为互联网技术的典型应用之一,自动灌溉控制系统不仅为设施农业灌溉和城市绿化灌溉等领域节约了大量水资源,也为根据作物和花木的需水特性进行个性化灌溉和用水精准计量提供了基础;自动灌溉控制系统由硬件和软件两个部分组成,硬件部分包括灌溉控制器、电磁阀和传感器,软件安装运行于工控机_卜并与硬件部分相连,是人机交互人口和控制中心,根据监测数据和灌溉模型进行自动伴自动的灌溉控制;自动灌溉方式主要有两种:一种是建立周期性的灌溉方案,进行定时灌溉;另一种是以土壤水分监测数据和气象数据为输入,通过灌溉决策模型计算灌溉时间和灌水量,实现按需灌溉。实时性对于自动灌溉控制系统至关重要,传感器数据采集的实时性也决定了灌溉决策的时效性,同时,灌溉控制指令也必须实时地传输到电磁阀,保证灌水量的精确控制;网络环境和系统架构是影响实时性的主要因素,通常在一定的工程条件下,网络传输速度是确定的,此时系统架构对实时性起着决定性作用;当前的灌溉控制软件系统主要是基于客户端/服务器(C/S)结构开发的桌面应用程序,客户端软件与数据库之间通讯效率很高,且网络结构简单,因此系统实时性能够得到有效保障;但是,由于C/S结构程序必须运行于特定的软硬件平台,无法实现多种设备平台的覆盖,适用范围非常有限,而针对所有可能平台进行开发在多数情况下并不可行;另外,C/S结构程序升级维护成本较高,同时难以实现多个项目集中管理。
发明内容
为解决上述问题,本发明提出了一种基于互联网的农业自动灌溉控制系统数据推送方法,提出了通过数据推送模式提高实时性的方案,并对数据层与逻辑层、逻辑层与表现层之间的具体数据推送模式进行了设计。
本发明的基于互联网的农业自动灌溉控制系统数据推送方法,所述方法包括以下步骤:
第一步,系统结构设计,采用丰富互联网应用技术进行表现层的开发,使其除了展示服务器返回数据之外,增加更多数据表现和交互功能,在改善用户体验的同时,减少网络数据传输量;
第二步,数据传输实时性瓶颈分析,在数据拉取模式中,客户端程序调用一个异步方法来从服务器获取数据,然后服务器端程序通过调用一个同步方法从数据库中获取最新数据,数据库返回数据给服务器端程序后,服务器再将数据发送给客户端;数据拉取过程通常能在较短时间内完成,但是由于硬件设备的数据采集与软件系统的数据获取相互独立,客户端程序并不知道何时数据库数据有了更新,难以实现数据同步更新,延时较长且不确定,形成了整个系统实时性的瓶颈,影响着整个灌溉控制过程;
第三步,数据实时推送设计,解决数据采集过程中的实时性瓶颈的方法为采用数据推送方式来传输数据更新,在数据推送模式中,数据更新活动之间相互连接,各部分操作之间不会因为查询间隔而互相等待,降低数据传输延时的同时,也减少了无用的数据查询操作;
a.观察者模式,允许多个用户同时观察同一个数据主题,当这个主题的数据状态发生变化时,会通知所有相关用户,根据最新的数据更新自己的状态;数据逐层按照通知方式进行传递,消除了查询频率与数据更新频率不同造成的延时;数据推送仅在数据源发生变化时发生,避免了大量不必要的查询操作;
b.数据层与逻辑层之间的数据推送设计,在数据层与逻辑层之间应用观察者模式,实现数据从数据层到逻辑层的推送,其中,被观察者为数据库中数据表,观察者为web服务器中监听程序,数据通讯模块将更新数据插入数据表后,数据库立即通知相关web服务程序,执行数据主题更新;
c.逻辑层与表现层之间的数据推送设计,需要客户端程序加载时,在逻辑层和表现层之间建立实时的双向数据连接,并观察逻辑层的一组数据主题,当这组数据主题更新后,就会通过数据连接通知客户端程序;表现层发出连接请求后与逻辑层建立连接并保持,然后通过数据流请求,为逻辑层数据推送提供下行通道,而表现层推送数据至逻辑层,则采用内部HTTP连接按照请求应答方式进行。
进一步地,所述第三步的数据层与逻辑层之间的数据推送设计中,实现数据层到逻辑层的数据推送的具体步骤如下:首先在Web服务器创建数据接收程序,以响应数据更新通知;接着在数据库创建一个存储过程,实现发送数据到Web服务器;然后在被观察的数据表中创建insert触发器,其中调用上一步数据库中建立的存储过程;最后当更新数据插入被观察数据表中时,触发器调用存储过程将更新数据发送到Web服务器,服务器程序接收数据并更新对应的数据主题,为下一步推送数据至客户端程序做准备。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于哈尔滨派腾农业科技有限公司,未经哈尔滨派腾农业科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610904003.7/2.html,转载请声明来源钻瓜专利网。





