0 引言
随着物联网技术的飞速发展,乳品质量追溯信息化备受瞩目,应用于知名乳品企业的大型奶牛养殖场乳品追溯专用系统应运而生,但这种大型平台因价格昂贵、设计细节直接针对大型奶牛养殖场,很难推广到养殖小区或者合作社中。而这种新兴的集约型养殖模式在信息化建设方面仍比较落后,其在奶牛养殖和生鲜乳收购等环节中存在的管理服务漏洞,严重影响了实现乳品质量链的整体追溯,一旦出现乳品质量问题不能迅速定位到某个环节,所以开发适用于中小型养殖场乳品质量链追溯的服务平台具有更普遍性的意义。
1 追溯平台总体设计
目前移动互联技术已经深入到人们的日常生活中,本文在分析国内外乳品质量链追溯系统设计的基础上,认真分析了中小型养殖场用户需求,采用Android技术完成移动前端主要功能设计,分别实现了奶牛养殖模块、生鲜乳收购模块和乳品生产模块的应用软件开发,使用二维码识别技术降低了设备成本闭,并且在大量数据交互时其独特的RAM自动回收机制提高了运行效率。采用了ZigBee无线传感器网络和C++builder上位机软件设计了超市乳品销售冷柜温湿度自动监测系统,通过互联网达到信息共享。与现有追溯平台相比,,填补了乳品质量链最末端销售环节的储存环境温湿度信息监测与追溯。采用了具有先进性的富客户端技术ExtJS4为消费者和质量监督部门设计了乳品溯源信息的PC机浏览器功能接口。采用了成熟的Tomcat网络服务器和S2SH(Struts2+Spring+Hibem ate)框架作为物联网中间件,如此架构维护方便,扩展性强,非常适合中小型项目的开发。总体架构框图如下所示:
图1 系统总体框图
本平台较为完整的构建出一个乳品质量链追溯及服务的物联网结构体系,如图2所示。图2中包括感知层、网络传输层和应用层。
图2 平台架构体系
(1)感知层。主要使用二维码识别技术,通过安卓手机对奶牛二维码耳标的识别把个体引进整个网络中,这主要应用于奶牛精细化养殖和生鲜乳收购中,在乳品销售部分中对于乳品冷柜系统的监测使用SHTIO贴片式温湿度传感器并连接ZigBee无线模块网络完成底层的数据信息采集。
(2)网络传输层。本部分在参考很多物联网架构模型之后,在本课题中被分为两层,底层为了保证数据传输的可靠性和有效性,使用4G移动通信网络或者WIFI局域网把信息高保真的传输到互联网中,较为靠上一层是物联网的关键技术中间件,本平台中主要使用Tomcat服务器和S2SH框架完成底层数据的校验、过滤以及事物的管理等等,为了灵活均衡各个层次的功能就没有那么严格区分。要进行精确的软件框架搭建,Struts2,Hibernate和Spring在本文中的应用属于核心技术。图3为三大框架整合需要的jat包。
图3 相关接口和辅助包
图3中,action层是属于前端的用户请求和服务器响应的程序访问入口;service层是作为具体的业务逻辑的操作如对前端传递的复杂数据进行分类处理和组合;DAO层的作用是封装了对数据库最原始的操作,连接底层的数据库为前两层提高数据支持。为了系统稳定所以有相关包都是手动加入然后通过设置path路径引入工程中,其中src目录下的配置文件主要是对于事物的处理还有Struts2的文件,lib中的jar包就是三个框架全部依赖的。其中domain包中是实体类的具体设计,如养殖户,奶牛个体和产奶量等,在设置完成它们对应的属性值后再Hibernate的配置文件中设置延迟加载、id、参数变量和表之间的关系。
(3)应用层。本层的应用功能主要是通过安卓手持终端和PC机的浏览器实现,主要包括乳品质量链及服务平台的奶牛养殖、生鲜乳收购、生鲜乳运输、乳品生产和销售五个环节组成,详细的服务功能如图4所示。
图4 应用层功能服务图
2 乳品追溯环节分析
2.1奶牛的养殖环节和生鲜乳收购环节
考虑到奶牛的日常活动量较大,采用成本较低的奶牛耳标印制二维码,耳标采用国内统一编码GSl规范,在相同的丢标率情况下比电子标签更能节约养殖户的成本,配合设计的不同功能的安卓客户端软件使移动采集低成本多功能。设计的养殖员使用安卓客户端软件,可在巡视和喂养奶牛工作中及时对奶牛每天的产奶量、饲料配方和健康状况记录和更新,达到精细化养殖目的,同时把养殖信息共享于服务器中,来满足追溯的需求。生鲜乳收购环节利用本文设计的安卓客户端软件使用移动终端扫描任意奶牛的二维码耳标,识别养殖户姓名和奶牛及乳品的相关信息,还可以进行生鲜乳交易,安卓的APP程序成本较低比POSS机的专用程序更能推广使用。在结算单功能中引入短信收发硬件设备,完成一次交易后提交结算单到后台数据库同时触发相应的Action驱动GSM-SMModem短信收发设备把交易详情以短信的形式发送给养殖户,同时提供交易信息服务。流程简图如图5所示。
图5 奶牛养殖和奶站端流程图
生鲜乳收购部分使用华为手机和模拟器进行主要功能的测试,通过对奶牛耳标的二维码识别来确定交易的养殖户信息,这样可以降低成本,适合规模较小的奶站使用,因为在实际调研中发现大型的奶站收购系统大多使用POSS机识别RFID进行交易,这样的系统显然会增加一些奶站开支,所以小型奶站可以考虑使用安卓手持终端平台,通过扫描耳标后取到奶牛编号发送到后台数据库服务器中查询表中对应的养殖户姓名等信息,这就是典型的多对一数据表关系,通过Hibernate关联关系映射较为简单的维护好双方数据信息,与奶牛养殖的业务逻辑不同,本环节的提交地址是checkmilker.action中,任意奶牛编号都能查询到养殖户信息,通过response把养殖户的信息以Json数据格式返回到手持终端,如图6所示。
图6 生鲜乳收购功能界面
图6中,左上角显示养殖户李石姓名,这样点击其他功能模块都是针对的本养殖户进行操作,当奶站员工点击生鲜乳收购功能,进人交易订单界面,其中自动显示奶牛养殖户姓名和手机号码信息,收购员再输入本次交易的生鲜乳总量和今日单价,确认之后就提交到后台MilkOrder.action中,经过S2SH最后到达持久层,通过简单计算后驱动服务器端短信发送设备,把本次记录详情以短信的形式发到养殖户的手机中,同时通过打印机可以出具纸质交易凭据,以便出现错误容易核对。如图7所示。而对于奶牛的个体信息登记是奶牛精细化养殖过程中所必须的服务功能,使用安卓手持终端运行专用程序,显示出登记表单中需要填写的奶牛编号、身高体重等详细信息,同时由奶牛的外貌体型可以大体判断出它的健康状况、产奶年限等相关情况。
图7 生鲜乳收购与养殖表单
2.2生鲜乳的运输和乳制品生产环节
生鲜乳运输部分和乳制品的生产部分,在奶站的生鲜乳采集罐装满后需要运输车把乳罐运输到乳制品加工厂,同时需要打印出一个印有二维码的封条密封这乳罐,防止在途中生鲜乳遭受外来污染,二维码包含着生鲜乳运载量、装运时间、地点和车牌照等信息,到厂后工作人员使用安卓手持终端进行扫描核对后台数据库信息进行接收,同样在乳制品生产部分,使用二维码对产品包装进行唯一识别喷印,便于跟踪其中的信息变动。目前二维码识别功能二维码识别功能在生活中使用逐渐频繁,而识别技术也比较多样,本平台中为了加快建设采用基于Java的二维码识别技术,获取耳标奶牛编号后可以直接发送到后台验证。识别接口采用Apache License 2.0开源的ZXing项目提供的二维码的识别开发包,在其官网下载ZX-ing-2.0.zip后解压,打开Eclipse导入源码中的Android项目,然后右击项目选择“Build path”-“AddExternal Archives”把核心库core.jar文件加入到项目中。通过阅读其demo文档,理解各个类的作用,CaptureActivity,这是启动扫描器所需的类,CaptureActivityHandler,这是解码处理类。运输及乳品生产运行测试结果如图8所示。
图8 运输与生产表单
2.3乳制品销售环节
乳制品销售环节的主要渠道就是大型超市,但目前大型超市的冷柜温度采集仍采用人工定时查看温度计和手工记录,目前提出和采用的乳品质量链追溯方案中缺少最后一环节的保证。本文通过设计ZigBee无线模块传感网络超市冷柜温度自动监测系统,对乳品质量链增加了最后一个环节的追溯和安全保障。可以实现历史查询和远程登录数据库查询,销售终端的安卓应用程序还可以完成产品抽检、拼箱信息的记录。本部分设计的乳品销售部分中的冷柜温度监测系统,基于SHTl0温湿度传感器和CC2530组建ZigBee无线模块传感器网络,完成对超市内各冷柜温度的ZigBee数据采集与传输,其系统结构如图9所示。
图9 温湿度监测系统结构
终端温度ZigBee数据采集节点中SHTl0需要外接电源供电并直接输出数字信号,将测得的温度数据传递给对应的CC2530数传模块,各采集节点独立工作,将ZigBee数据采集到的数据通过无线传输到协调器节点进行缓存,然后经由RS232串口线统一发送到上位机后台C++builder程序中,通过控件的ODBC保存各冷柜温湿度信息于Oracle数据库中,同时保存ZigBee数据采集的日期和时间,实现历史数据查询功能,方便日后分析使用。
要实现对超市内多个冷柜温度监测系统的设计,首先需要对终端温度ZigBee数据采集节点进行设计,完成各个冷柜温度数据的采集工作。温度采集电路采用的SHTIO单片式的数字温湿度集成芯片,其中由单个能隙式的测温传感器和单个电容式的聚合体测湿传感器构成,为了输出高精度的数字信号十四位的A/D转换器和2-wire数字接口被应用在这个单芯片中。SHTl0和CC2530的ZigBee数传模块连接电路如图10所示。
图10 SHTl0和CC2530连接电路
SHTl0所需要的电压是2.4~5.5v,它被上电后,等待11 ms之后经过“休眠期”,在这个期间任何指令不用发送,之后一组测量性命令被发送出去,控制器等待测量结束,传感器进入空闲状态表示测量结束,同时下拉DATA至低电平。只有这个“数据备妥”信号被读出数据之后,控制器才能第二次触发SCK的时钟信号。首先及时把监测到的数据存储起来,然后控制器可以并发的执行其他功能,如此按照需要读取数据类似轮询的效果。在所有的功能完成之后,传感器进入自动休眠状态。
设计过程中,选用CC2530数传模块实现无线传输,将温度采集节点电路中得到的数据发送给协调器。CC2530支持IEEE 802.15.4规范,结合领先的RF收发器的优良性能,其不同的运行模式使它尤其适用于超低功耗要求的系统,抗干扰能力强。IEEE802.15.4/紫峰规范中包含星型、树形和网状三种网络拓扑结构。根据超市冷柜布局选择使用合适的网络结构,在本设计中选择使用星形网络,各终端温度ZigBee数据采集节点均独立工作。布点工作完成之后,用软件编程来实现无线传输操作。
3 结论
由于时间和篇幅原因,本文虽然提出了较为完整的乳品质量链追溯,主要把物联网和移动互联理念渗透到乳品质量链追溯中,不仅能够为消费者和监管部门获取更加全面的乳品追溯信息确保质量安全,还能为养殖户、奶站和乳品企业提供关键部分的功能服务进而提高生产效率,但是没有把各个部分详细复杂的功能设计完整,因为实际生产中的功能对网络传输速度依赖较高,而目前4G建设还是试点阶段,WIFI的覆盖也具有很大局限性,所以有些EXTJs4富客户端的浏览器功能只是预留了接口功能,以后加以完善。冷柜监测系统的设计使用了ZigBee无线模块,实现了温度的ZigBee数据采集。虽然调测试都较为顺利,但是SHTl0贴片传感器仍不是最佳选择,以后会研究直接从冷柜内部固有的硬件温控系统结合ZigBee数传模块传输网络获取温度数据。最后希望更多的乳品追溯设计者做出更好的产品,让中国乳业的信息化水平尽快与世界接轨。