基于Android的农残检测仪数据采集报送系统的设计

2019-10-21 01:21武悦俊刘日威张冠文倪树标
科学与财富 2019年25期
关键词:服务器端蓝牙客户端

武悦俊 刘日威 张冠文 倪树标

0 引言

近年来,农药残留量检测技术发展至今已取得很大进展,但在传统农残检测设备的开发和维护中,往往是通过串口、以太网等有线的方式对仪器进行参数设置,获取仪器的检测数据。这就需要有线传输所依靠的各种线材,又需要安装有专用软件的个人电脑,否则终端用户就只能手动录入仪器的检测数据,不但效率低,而且很容易出错。

本文针对中广测NC系列农药残留快速检测仪,采用市场占有率最高的Android终端替代PC作为上位机来构建数据的采集与维护系统,可以很好地解决传统的“有线+个人电脑”数据采集的弊端,使仪器更适应外场工作,提高信息化水平。

1 系统架构设计

本系统总体架构的设计上采用面向移动终端的C/S模式,Android客户端的设计上采用MVC模式,并应用Web Service技术实现了客户端与服务器端的数据交互。系统框架如图1所示:

整个系统是由具有蓝牙通信功能的农药残留快速检测仪、运行在Android上的移动客户端和通过移动互联网进行连接的中心服务器组成。Android起到了数据中转的作用,是整个系统的核心。

检测人员在现场按照农残检测流程对农产品样品进行检测,检测数据通过仪器蓝牙模块发送到Android手机,手机将接收到的数据暂时存储在系统自带的SQLite数据库里,可以对这些数据的附加信息进行编辑修改,并将这些暂存的数据通过4G或WLAN网络上传到中心服务器,最后将数据存储在系统运营商的数据库里,主管部门可以通过查看后台数据库对大量检测点进行实时动态监控。

2 移动客户端设计

移动客户端采用支持蓝牙功能的Android平板电脑或手机,程序开发基于Android5.0系统,开发平台为PC,所用开发工具为Android Studio集成开发环境,移动客户端整体功能设计如图2所示:

(1)蓝牙操作

蓝牙操作模块通过使用Android提供的蓝牙API,实现查找并连接检测仪器,读取检测数据,设置仪器参数等功能。

(2)本地数据管理

本地数据管理模块具有查询、分类、汇总、统计和报表生成功能,包括将检测数据存储到手机,导出为Excel文件以及生成QR二维码等。具有多种方式数据统计汇总功能,例如可以对某一时间段的檢测信息进行统计汇总,也可以对某一类农产品的检测信息进行统计汇总,还可以对某一检测点的检测信息进行统计汇总。

(3)用户登录

用户登录模块主要用于用户登录服务器,只有用户名和密码验证通过的用户才可以更新或者下载数据。

(4)上传下载

上传模块和下载模块通过调用服务器端提供的Web Service接口API,进行检测数据的网络共享。

2.1基于蓝牙的数据传输

Android应用框架层提供了实现蓝牙功能的API,通过它们可以实现与其他蓝牙设备的无线通信,建立点到点的连接。农药残留检测仪的蓝牙模块选用的是HC-06,它与Android的通信方式使用SPP协议。

在Android应用程序开发中,蓝牙设备之间要建立连接,必须实现客户端和服务器端代码,分别用来开启连接监听服务和发送连接请求。服务器端采用accept()方法接受连接,客户端则采用connect()方法请求连接,由于这两个方法都是阻塞调用,所以需要单独的线程来管理连接。SPP协议的UUID为00001101-0000-1000-8000-00805F9B34FB,使用此UUID创建套接字并连接,直到当它们都拥有一个蓝牙套接字在同一RFCOMM信道上时,说明它们之间连接成功,然后就可以实现设备之间数据的共享,同样,数据的读取和写入操作也是阻塞调用,需要建立一个独立的线程来进行操作。

2.2数据库存储

数据库管理模块提供数据库创建、更新、查询和删除功能,用来暂存从检测仪器接收来的数据,以便后续通过网络共享。在Android智能手机上,使用开源的、与操作系统无关的嵌入式SQL数据库SQLite3来存储检测数据。

根据需求,客户端数据库的设计包含6张表:t_checkresult,t_checktype,t_goods, t_overflows,t_source,t_vendor,分别用来存储检测数据、检测类型、样品名称、超标限值、被检测单位信息、检测单位信息。t_checkresult表的结构说明如表1所示。

3 服务器端设计

移动客户端不直接访问中心数据库,而是引入了Web Service接口作为业务逻辑层,客户端将本地暂存的检测数据先通过报文的形式发送给Web Service,Web Service接收处理后更新数据库,从而实现了数据的分布式处理。

Web Service即Web服务,是用标准的规范的基于XML的WDSL语言描述的,它向外界暴露出一个能够通过Web进行调用的API,使得程序员能够通过标准化的消息传递机制来访问这个的API。通过Web Service系统可以非常灵活的部署和升级维护。

本文在.NET框架的支持下,采用ASP.NET和C#语言,开发了数据交换接口,通过IIS部署Web Service,中心数据库系统选用SQL Server 2008。

提供管理员和普通用户两种账户类型,管理员账户具有最高权限,不仅具有普通用户基本的数据上传下载功能,也可以对其他用户账户进行操作,如对其辖区内用户的检测信息进行统计汇总,添加用户、修改用户、删除用户和更改用户权限等。

系统对外接口访问地址:http://ip:port/services/ptcck.asmx。其中ip表示Web服务器的网络地址,port表示提供Web服务的端口号。系统对外接口包括查询接口和写入接口,例如:

获取某用户一段时间内的检测信息

public string[] selectUserDayCheckResult(string vendorid, string startday, string endday)

4 结语

本文结合智能手机广泛应用的优势,设计开发了基于Android终端的采集和报送系统,实现了智能的农产品安全监控网络。使用蓝牙技术采集农药残留检测数据,然后通过移动通信技术传输,解决了传统有线采集传输模式的弊端,使仪器在现场的使用更加方便快捷,提高了工作效率。本系统有较强的实用性,对今后设计集成化更高的智能仪器也有一定的参考意义。

猜你喜欢
服务器端蓝牙客户端
蓝牙音箱的直线之美
Linux环境下基于Socket的数据传输软件设计
简单、易用,可玩性强Q AcousticsBT3蓝牙音箱
县级台在突发事件报道中如何应用手机客户端
孵化垂直频道:新闻客户端新策略
基于Vanconnect的智能家居瘦客户端的设计与实现
适合自己的才是最好的 德生(TECSUN) BT-50蓝牙耳机放大器
浅析异步通信层的架构在ASP.NET 程序中的应用
基于Qt的安全即时通讯软件服务器端设计
紧急:蓝牙指尖陀螺自燃!安全隐患频出