APP下载

基于Qt平台的无人插秧机远程监控系统设计

2019-07-08赵德安李洋

软件导刊 2019年6期
关键词:通信

赵德安 李洋

摘 要:为了解决监测终端操作系统多样化的问题,设计一款基于Qt的跨平台远程监控系统。该系统采用C/S模式,主要由信息采集系统、通讯系统以及远端监控系统组成。无人插秧机远程监控以Qt为开发平台,利用北斗卫星定位、4G通信网络、Socket通信、GIS、图像处理等技术,实现对远程无人驾驶插秧机工况参数的监测与控制,包括插秧机动力、行走、作业等各种信息。另外,通过对数据的分析处理,还可预测插秧机可能出现的故障。测试结果表明,该系统可有效实现对无人插秧机的远程监控,并解决了操作系统的可移植性问题。

关键词:远程监控系统;Qt平台;无人插秧机;通信;电子围栏

DOI:10. 11907/rjdk. 182461

中图分类号:TP319

文献标识码:A文章编号:1672-7800(2019)006-0093-03

Abstract: In order to solve the problem of diversity of monitoring terminal operating system, this paper designs a Qt-based cross-platform remote monitoring system. The system adopts C/S mode, and it is mainly composed of information acquisition system, communication system and remote monitoring system. The remote monitoring system of unmanned rice transplanter takes Qt as the development platform, uses Beidou satellite positioning, 4G communication network, socket communication, GIS, image processing and other technologies to realize the monitoring and control of the operating parameters of the remote unmanned rice transplanter, including the power, walking, operation and other information of the transplanter. In addition, through processing and analyzing the data, it can also predict some possible faults of rice transplanter. In order to make the transplanter work in the effective area, it is also possible to set up an electronic fence in the operation area of the transplanter.

Key Words: remote monitoring system; Qt platform; unmanned rice transplanter; communication; electronic fence

0 引言

我国农业种植有着悠久历史,然而,随着近年来社会劳动力向沿海发达城市的转移,从事农业生产的人数大大减少,该现象在偏远山区更为明显。为了解决偏远山区劳动力匮乏的问题,也为了响应国家发展智能农业的号召,对插秧机的研究势在必行。

很多国家都已进行了农业智能化方面的研究。其中,日本是水稻种植机械化及智能化水平最高的国家,在水稻插秧机无人驾驶领域一直处于领先地位[1]。如日本北海道大学设计了一套低成本的自动导航系统,在插秧机以1m/s速度行驶,且行驶距离为40m时,横向跟踪偏差最大值为10cm,平均偏差为3.8cm[2];韩国首尔国立大学的Cho等[3]研制基于视觉导航的果树喷药机器人,其利用视觉系统进行轨迹识别,利用超声波传感器进行障碍物检测,并利用模糊控制方法实现自主导航和避障。在国内,虽然对智能作业机械的研究起步较晚,但也取得了一些成果。2001年,沈阳自动化研究所研制了一套遥控操作机器人系统,该系统能够对图像和控制指令进行无线传递,但结构比较简单,仍有待改进[4];南京农业大学的沈明霞等[5]在农田图像分割方面运用图像形态学分析理论提取图像形态特征,然后根据先验知识完成图像分类识别,利用小波变换提取农作物边缘,并运用虚点定位方法实现机器人导航。

由于当前对插秧机的研究通常在某一平台下进行,而彼此之间无法相互移植。因此,本文提出基于Qt平台[6]的无人插秧机远程监控系统,只需对代码进行简单修改即能实现在各平台之间的移植。在条件允许的情况下可使用PC机进行开发,也可以使用Android智能手机进行开发,从而解决了开发平台不统一的问题。

1 系统架构

如图1所示为该系统整体架构。该系统采用C/S模式,主要由信息采集系统、通讯系统[7]和远端监控中心3部分构成。每部分都有各自的功能和任务,3部分合作完成数据的采集、转发、收集与显示,形成一个有机整体。机载终端和客户机可通过连接服务器获取相关数据[8],服务器也可根据客户机需要向机载终端下发相应命令,从而实现良好的交互功能。

2 工作原理

无人插秧机远程监控系统主要由机载终端(无人插秧机)、通讯系统和远程監控中心3个子系统组成。其中,远程监控中心包括服务器端与监控客户端两部分。机载终端、监控客户端和服务器之间采用客户机/服务器模式。

在机载终端,选取不同传感器用于采集插秧机实时工况信息,并通过CAN总线传送给工控机[9];工控机对实时拍摄的秧苗栽植图像进行处理后,与卫星定位数据相结合,得到插秧机秧苗栽植质量数据;最后根据自定义通信协议对数据进行打包处理,并通过4G移动通讯网络[10]上传到远程监控中心。

远程监控中心系统软件采用Qt集成开发环境进行设计,主要由系统设置、数据库、插秧机管理、电子地图等模块组成。数据部分由下位机通过4G网络传输给上位机服务器软件,之后存入本地数据库[11],以方便随时调取。监控客户端通过连接服务器,获取相应数据并显示在界面上。

3 机载终端

插秧机机载终端主要包括:传感器、摄像头、处理器、数据采集卡、GPS接收机与GPRS模块。其中,传感器负责采集发动机油温、扭矩、转速、栽植机构位置(高位、地位)、插秧机作业速度等工况参数,然后通过数据采集卡传输到处理器进行处理;GPS接收机负责定位插秧机,并将坐标信息发送给处理器模块;网络摄像头负责拍摄图片,然后将其压缩编码[12]后发送给处理器。处理器则是整个采集系统最核心的部分,首先接收来自GPS的坐标信息,也即经纬度信息;其次,通过对摄像头拍摄的图片进行解压缩、解码,并经图像算法处理后与经纬度信息结合,识别出漂秧或漏秧的确切位置,并作上醒目标记;最后,处理器将所有数据按一定协议进行打包与封装,通过GPRS模块[13]传递给远端监控中心。整个机载终端结构如图2所示。

4 GIS功能实现模块

通过GPS定位与GIS地图信息[14],能够很容易实现对无人插秧机的远程监控,并将插秧机位置信息实时显示在PC客户端或Android移动客户端。此外,它还提供了很多应用程序函数接口,可方便用户端进行地图浏览设置,如缩放、漫游操作及地图属性设置,如固定比例尺、地图叠加等。在插秧机监控系统客户端的可视化地图操作中,PC客户端和Android移动客户端能对卫星地图实现图层控制、自由缩放、漫游与加载显示等基本功能,以便用户掌握插秧机详细位置信息。

5 Socket通讯

在计算机网络术语中,Socket通常被称为“套接字”,而套接字是连接的一个端点,该连接是由其两端套接字地址唯一确定的[15]。这对套接字地址称为套接字对(Socket Pair),每个套接字是由IP地址和端口号唯一确定的。Socket也是由TCP/IP协议抽象封装而来的,是提供给用户进行网络开发的应用程序接口(API)。

套接字接口(Socket Interface)由一系列函数组成,它们和Unix I/O函数相结合用于创建网络应用。Socket之间的連接过程通常分为3个步骤:①服务器建立监听;②客户端提出请求;③确认并建立连接,也即所说的“三次握手”过程。基于套接字接口的网络应用概述如图3所示。无人插秧机监控系统C/S模式可使用这种基于Socket的TCP通讯方式[16],以保证数据的可靠传输。

6 数据存储

数据库能够对各种信息进行存储与管理,在用户需要时可随时调出查询。整个插秧机监控系统需要存储的数据很多,比如:发动机油温、扭矩、转速、插秧机行走速度等工况参数,GPS坐标信息,以及每个位置的秧苗栽植质量数据等。机载端通过上传数据进行实时更新,也可以查看历史数据,甚至通过对历史数据的分析对比,检测与预测插秧机可能出现的异常和故障。此外,用户也需要授权信息才能使用该系统,以防止非相关人员修改数据。内部人员系统信息也需要存储在数据库中,工作人员登录系统时需要与数据库[17]中已有的信息匹配成功后才能授权登录,从而有效保障了系统安全。

7 客户端软件调试

用户需要在PC机上安装应用软件,或在智能手机上安装相应APP[18],通过系统授权即可使用该软件,操作简单方便。系统的人机交互界面简单、美观,用户可随时掌握插秧机工作状态。其中,图4为Android手机监控系统运行主界面,图5为PC机监控系统运行主界面。它们都是从上位机监控服务器端调取数据,可以看到两个平台运行效果相同,表明系统成功实现了跨平台功能。

8 结语

本文设计了一款基于Qt的无人插秧机远程监控系统,利用北斗卫星定位、4G通信网络、Socket通信、GIS等技术,实现对远程无人驾驶插秧机工况参数的监测与控制。该监控系统基于Qt平台开发,解决了操作系统的可移植性问题,但本文设计的监控系统功能比较单一,未来可加入多线程等功能对系统作进一步扩展完善。

参考文献:

[1] 陈训教. 基于无人驾驶的步行插秧机辅助行走机构及其控制系统优化设计[D]. 哈尔滨:东北农业大学, 2017.

[2] 王宇. 插秧机自动导航控制系统的设计与研究[D].杭州:浙江理工大学, 2016.

[3] 施响军. 基于机器视觉的小型插秧机导航研究[D].杭州:浙江理工大学, 2010.

[4] 熊中刚. 插秧机智能作业的远程监控系统研究[D].长沙:湖南农业大学, 2013.

[5] 金海龙. 插秧机视觉导航关键技术的研究[D].杭州:浙江理工大学, 2015.

[6] 陆文周. Qt5开发及实例[M].第2版.北京:电子工业出版社,2015.

[7] 杨延双, 张建标, 王全民. TCP/IP协议分析及应用[M].北京:机械工业出版社, 2007.

[8] 罗亚辉,蒋蘋,吴畏. 高速插秧机无线监控软件系统设计[J]. 湖北农业科学, 2012, 51(21):4887-4890.

[9] 李玉河,邵善锋,刘家亮. 基于CAN总线的插秧机控制系统设计[J]. 工程机械, 2012(10):10-13.

[10] ZHANG Z, LUO W, LI X, et al. The design and implementation of remote real time monitor system for embedded devices based on GPRS[C].International Conference on Computer Science and Electronics Engineering, 2012:432-436.

[11] 石正喜. MySQL数据库实用教程[M].北京:北京师范大学出版社, 2014.

[12] 魏丹. 基于数字图像处理的车辆智能防追尾系统[D].常州:江苏理工学院, 2012.

[13] 潘峥嵘,滕尚伟,尹晓霈,等. 基于GPRS的油田抽油机远程在线监控系统的设计与实现[J].工业仪表与自动化装置, 2008, 35(1):75-78.

[14] 张斌.基于GPRS/GIS的工程机械远程监控系统[D].长沙:湖南大学, 2007.

[15] 龚奕利,贺莲. 深入理解计算机系统[M].第3版.北京:机械工业出版社,2016.

[16] 程咏喜,蒋珉. 基于TCP/IP协议的WinSock网络编程及应用[J]. 计算机时代,2004(7):29-30.

[17] 王雨竹. MySQL入门经典[M].北京:机械工业出版社,2013.

[18] 郭霖.第一行代码——Android[M].第2版.北京:人民邮电出版社,2016.

[19] 张辉, 陈古典. 基于物联网的城市消防远程监控系统[J].信息化研究, 2010, 36(10):55-58.

[20] 陈坚. Visual C++网络高级编程[M].北京:人民邮电出版社, 2001.

[21] 肖健. 基于现代OpenGL的消防员跟踪系统上位机软件的设计与实现[D].南昌:东华理工大学, 2017.

[22] 何岚. 基于物联网的大棚果蔬智能监控系统研究[D].长沙:湖南农业大学, 2017.

(责任编辑:黄 健)

猜你喜欢

通信
基于数字化变电站SV报文通信可靠性问题研究
铁路光缆运营维护方式研究
多媒体融合通信与平台通信优化方案研究
基于“一级调度、两级运维”的通信管理体系研究①
对数字微波通信技术的研究