基于物联网的农业大棚软件系统的设计与实现

2022-03-08 08:32盐城工业职业技术学院郑亚平刘宁
河北农机 2022年2期
关键词:服务端浏览器大棚

盐城工业职业技术学院 郑亚平 刘宁

1 绪论

农业是关系着国计民生的基础产业,传统农业存在技术水平落后,农业生产率低下等问题。随着物联网和互联网技术的出现与快速发展,农业技术发展迎来了新的机遇与挑战。

物联网技术在农业大棚中的利用,需要在农业大棚中接入传感器,这些传感器能够监测了农业大棚中内部影响农作物生长的参数,通过改善农业大棚内的环境,能大大提高农业生产效益。目前市面上的基于物联网的管理平台大多成本高昂、操作麻烦、难于部署并且拘泥于现场不能做到远程监控、实时监控,致使农业信息化进程发展缓慢。因此,需要建立一个平台能够自动地通过无线传感器技术接受记录传感器监测的环境参数,进而保证通过物联网技术能够准确地获取农作物的产量信息和周围的环境信息,可以实现农业信息化管理,推进中国现代化农业的发展进程。

2 开发工具以及开发技术

2.1 开发工具

本系统开发的工具主要包括Sublime,InfluxDB 时序数据库,SQL Server 2008 R2 关系数据库,Fiddler、Firefox 浏览器。

2.2 开发技术

本系统开发的技术主要包括:REST 技术,Bootstrap 技术,Golang 技术。

REST 是一种简单的、可扩展的、针对Web 开发而设计的架构风格,是一种对网络系统架构的约束准则,符合这个准则的就是RESTful 框架。REST 架构风格把网络上分布的各种数据看作资源,分布在各处的资源由URI 来标识,而客户端应用通过URI 来获取资源的表现形式,同一个资源可以有多个表现形式,具体的表现形式通过在URI 请求中加入限定参数来描述。

Bootstrap 技术是HTML 和CSS 的集合,可以通过现成的ui 组件能够迅速搭建前端页面。并且Bootstrap技术提供了响应式Web 设计,这种技术可以使得网页页面布局会自动根据屏幕的大小而进行相应的响应和调整。这种设计使得无须在为每一个终端设备做特定的版本,大大减少了开发者的开发工作。

Golang 是一种全新的编程语言,有如下几大优势:一是go 的开发效率高;二是运行速度快,尤其在并发问题上,性能尤为突出。三是部署简单,目标机器上只需要一个基础的系统和必要的管理、监控工具,完全不需要操心应用所需的各种包、库的依赖关系,大大减轻了维护的负担。

3 需求分析

本系统是要研发一套适用于物联网行业应用及行业终端的统一开放式管理平台,实现农业大棚环境参数实时监测、展示以及移动端远程控制的功能。本系统采用B/S 的模式。选择B/S 架构,也随之带来一个问题。当前浏览器和屏幕尺寸碎片化严重,不同的浏览器支持W3C 标准的程度也不径相同,而且浏览器的版本新旧不同,支持的特性也不一样。更重要的是,屏幕尺寸的不同,显示效果也不一样。因此采用CSS3 技术以适应各类浏览器和屏幕尺寸。前端框架选择开源的Bootstrap,在此基础上开发自己的样式和做响应式Web设计,以适配PC 端和移动端各类浏览器和屏幕尺寸。

为支持对下位机实时传送的传感器数据监听和对设备的自动控制,需要服务端在并发问题上提供高效的处理能力,因此在Server 端采用Golang 开发。Go 在语言级别上支持了并发,通过简单的关键go 就可以充分利用多核,这对于硬件不断发展的时代,如此简单就可以充分利用硬件的多核,解决高并发的问题,其特性可想而知。

4 系统的实现与分析

4.1 系统架构

经过需求分析,并结合主流就技术设计的系统架构如图1 所示。

图1 系统架构图

4.2 数据库的设计

通过对农业大棚管理系统的需求分析可得,本系统需要采用了两种数据库,一种是InfluxDB 时序数据库,存储实时采集的传感器数据;另一种是SQL Server 2008 R2 关系数据库,存储基础的关系数据。

4.3 关键部分的实现

4.3.1 访问安全验证

本系统采用后台和前台完全分离的思想。服务端通过go-restful 包提供的API 来指定服务端资源的URL,客户端通过此URL 进行HTTP 请求,就可以获取服务端的资源,但是,这会使得服务端提供的API 服务完全暴露,因此服务端必须提供有效的安全措施,例如只有有权限的用户才能访问指定的数据资源。

go-restful 支持对每一层对象添加对应的fliter,用于对方法进行一层封装,用于进行pre function 操作,使用起来也很简单。

4.3.2 视频显示的设计

先在本机上安装视频插件,用户通过获取到的用户名、密码、NVR 设备的IP 地址和端口号,登录NVR(网络硬盘录像机)设备,然后通过调用视频插件提供的API,可对摄像头视频进行实时查看、分屏、全屏、退出等功能。

4.3.3 上位机和下位机通讯的设计

本系统上位机和下位机通讯主要涉及两个方面。一个是传感器采集,数据采集节点通过WiFi 将UDP数据包传输到路由器上,再由路由器传输到Web 服务器。另一个是设备控制,先由Web 服务器通过网络发送TCP 包到路由器上,再由路由器通过WiFi 向设备控制节点传输控制数据包。本系统采用的是计算机网路下的socket 方式通讯方式,通过Socket 通信的好处是无须和协调器物理连接,运行本平台的计算机可以在任何有网的地方,与分布在多地的多个协调器进行通信,实现多地远程监控。图2 是上位机与下位机的通讯模式。

图2 通讯模式

4.4 系统截图

系统主页主要包括系统的两个子系统:实时监控子系统和后台管理子系统。

(1)实时监控子系统如图3 所示,包含基于百度地图显示、传感器数据实时显示、视频监控三个功能。

图3 实时监控子系统

(2)后台管理子系统如图4 所示,包括:实时监控管理和用户管理。

图4 后台管理子系统

5 总结

本系统对农业推行现代化建设进行了探究,是基于物联网的农业管理系统,希望通过视频对农作物的实时监控,快速便捷实时地了解大棚内农作物生长状况,通过环境数据监测和视频监测大棚内各种设备的关闭情况,分析出影响产品生长的因素,再通过自动或是手动控制设备,改善大棚环境参数,提高产品生产效率。本课题的实现有助于农业大棚信息的管理实现规范化、科学化和信息化,给工作人员带来极大的方便。

猜你喜欢
服务端浏览器大棚
大棚妹子
大棚换茬季 肥料怎么选
谨防大棚房死灰复燃
原地翻建大棚 注意啥
微软发布新Edge浏览器预览版下载换装Chrome内核
反浏览器指纹追踪
新时期《移动Web服务端开发》课程教学改革的研究
基于三层结构下机房管理系统的实现分析
基于三层结构下机房管理系统的实现分析
浏览器