饲料样品采集信息管理系统设计与实现
2019-06-11罗清尧薛夫光吕坚强
文/罗清尧 薛夫光 吕坚强
1 引言
近年来,随着嵌入式技术、无线通信技术的发展,加之硬件性能的不断提高,智能移动终端得到广泛普及,已成为人们生活中不可缺少的一部分,智能移动终端在各行各业的移动应用越来越普遍。移动终端上全球定位系统(Global Posioton System, GPS)等定位技术的广泛应用,使得地理位置的获取也变得更加容易:如通过GPS、WIFI、无限蜂窝网等。基于位置的服务(Location Based Service,LBS)由此得到了迅猛的发挥和普及。基于地理位置信息的移动终端主要包括安卓、苹果系统的环境信息或物联网信息采集系统、农业信息服务等技术都已应用到现代农业之中。
饲料采样,即从待测饲料原料或产品中获取一定数量、具有代表性样品的过程。不同类别的饲料都有相应的采样操作规范,规范的采样过程是获取代表性样品、高质量分析数据的基础和保障。饲料化学分析结果的可靠性,不仅取决于化学分析方法本身的准确性,更重要的还取决于饲料样本的采集与制备。
在采样过程中,需要登记饲料样品采样登记表。为了实现采样活动中位置、图像等现场信息采集便捷、及时、有效的现实需求,实时收集饲料样品采样地理位置信息,及时掌握采样进度,利用移动设备自动获取采样位置信息和图像信息作为登记表补充,减少人为干扰因素,开发配套的智能移动设备终端位置信息采集软件十分必要。考虑到移动终端特征,系统只选取饲料样品采样作业过程中几个参数,主要包括样品标识(条码)、位置信息(东经和北纬)、采样地点、现场图像和时间。系统实现这些信息的现场收集和上传,实现即时性上传到项目管理的数据库,方便项目及时掌握进度和统一管理。
2 系统开发环境
本系统包括移动端APP和服务器端网站两部分,开发环境包括移动终端APP应用的开发环境和服务器端数据库管理及网站开发环境。
2.1 移动端开发环境
移动端软件开发环境包括Java开发工 具 包JDK ( Java SE Development Kit,1.8.0_45),Java运行环境JRE(Java Runtime Environment,1.8.0_45 ) ,Android 软 件 开发工具包Android SDK,插件ADT(Android Development Tools),Android运行的虚拟设备AVD(Android Virtual Device)。
移动端开发采用HBuilder为开发工具实现软件代码开发。HBuilder是DCloud(数字天堂)推出的一款支持HTML5的Web开发IDE。HBuilder的 编 写 用 到 了Java、C、Web和Ruby。HBuilder本身主体是由Java编写,它基于Eclipse,兼容了Eclipse的插件。HBuilder本身是一款功能丰富、集成开发环境、多平台开发的一款易学易用的开发工具,实现了emmet、sass、less自动编译,完整的代码提示、自动补全,是边改边看实时查看效果、代码块减少重复工作量、使用CSS选择器快速开发HTML和CSS(支持Emmet)、强大的JS解析引擎,是一款前端IDE,可做前端开发,最大的亮点是开发App,利用Html5+技术,结合mui+nativejs可以打包出Android和IOS的APP。本系统只开发打包了Android版本的APP系统,可使用在Android系统的移动终端上。
2.2 服务器端开发环境
服务器操作系统为Microsoft Windows Server 2008 R2 Enterprise,数据库采用Microsoft SQL Server2010数据库管理系统,网站发布使用的Apache-tomcat服务器。Java网站开发工具主要是MyEclipse 10,其他相关需要安装配置的软件包括Java 开发工具包JDK( Java SE Development Kit,1.8.0_45),运 行 环境JRE(Java Runtime Environment,1.8.0_45 ) 和Apache-tomcat(7.0.4) 。
3 系统设计
本系统包括移动端APP和服务器端网站两部分,其中,移动终端APP系统主要包括现场样品采集模块、异地样品采集信息采集模块、样品信息查询模块;服务器端系统主要包括与移动终端数据交互接口程序Java Servlet模块3个、饲料样品标识管理(核心是二维码)模块1个。
图1:系统主要功能模块组成
数据库采用SQL Server 2010,系统应用主要涉及的数据表4个,包括饲料原料代码表、区县行政代码表、饲料样品条码明细表、饲料样品采样信息记录表。如图1所示。
为探寻提高杂质铅脱除较为合理、有效的工艺控制条件和解决办法,首先对闪速吹炼工艺中铅的分布进行了系统分析。中原冶炼厂铜闪速吹炼过程杂质铅的走向与分布见表2。
3.1 饲料样品标识管理模块
样品标签由文字、数字及二维码三部分内容组成,如图2所示。
样品标识二维码数字组成由三部分,饲料原料代码(2位),行政区划代码(6位),同一饲料样品的顺序编码(4位),共14位。其中,饲料原料共40个,对应代码为01至40;区县行政代码使用国家标准《中华人民共和国行政区划代码》(GB/T2260-2007) 中6位行政区划代码。行政区划代码,也称行政代码,它是国家行政机关的识别符号,其中第一、二位表示省(自治区、直辖市)、第三、四位表示市(地区、自治州)、第五、六位表示县(市辖区、县级市)。样品标识的编码数字及二维码数字时相同的,二维码由编码数据为基础产生,在三段数字之间插入1-2位符号(不可见,默认为空格),作为对系统移动终APP端识别二维码时数据处理的特有标记。
系统每个样品标识打印4份,每个标识之间留一个空白标签。样品标识(标签)显示有饲料原料名称、省市名称、标识的编码数字(原料代码、行政区划代码、样品顺序号)及二维码图片。标签纸选择的是防水、防油、不可撕破、耐高温的PET标签纸,标签大小规格为30mm×45mm。
样品标签打印使用斑马标签打印机(ZEBRA ZT 210),打印机条码字体设置为默认的Code128,标签纸张类型设置为热敏。
3.2 服务器端中间件Java Servlet程序
本系统设计中,Android客户端和Web服务器端的文本数据交互是通过HTTP协议和JSON数据格式实现。服务器端通过3个Java Servlet程序实现服务器端与移动端的数据交互。
图2:饲料样品标识管理及样品标签
图3:饲料样品采集APP操作界面
对应移动端APP现场及异地样品采样信息模块的样品采集信息数据,首先根据移动端APP提供的样品二维码进行饲料样品标识数据合法性验证,然后接受数据并将数据写入SQL数据库中,并向移动端APP返回数据处理完成结果。
对于样品图像查询模块,首先根据移动端APP提供的样品二维码进行饲料样品标识数据合法性验证,然后根据饲料样品标识条码进行数据检索查询,并返回所有查询到的饲料样品对应的图像文件信息给请求的移动端APP。如图2所示。
3.3 移动终端模块
移动终端APP共包括3个界面如图3所示,实现了饲料样品二维码扫描识别,通过手机安装的位置信息定位软件获取手机所处的地理位置(东经、北纬),使用手机相机拍摄采样场景等图像,提供用户输入采样或上传地点等简化信息。系统为了保证数据能够狗正常上传,在数据上传前根据相机图像大小进行适当程度的大小处理。
4 结果和讨论
本系统在2017年至2018年各省市饲料样品采集过程中,有效完成了项目计划4000个饲料样品的现场采集中采样信息的收集上传工作,完成了项目的实时数据收集,提高了项目的管理工作效率。
异地饲料样品采集模块是为没有网络信号的偏远采样地区设置的替代方案,是现场饲料样品采样信息收集的有效补充。
在使用过程中,需要注意移动终端安全和权限设置中,赋予该系统对位置软件和相机的访问权限,否则,无法获取地理位置的东经和北纬数据,也不能正常打开相机进行照相。