标题 | 基于SSM的冷链云平台设计与实现 |
范文 | 朱德建 胡平 摘要:传统冷链在生产、运输和存储环节具有人工监测费时费力、数据超标报警不及时、问题溯源和取证困难等不足。借助阿里云平台、物联网技术和SSM开发框架,实现了覆盖冷链全环节的数据实时监测、记录、查询及报警推送功能,阐述了平台的软硬件组成及架构,设计了数据发送接收协议、数据展示逻辑、报警消息延时推送等核心功能。测试表明,云平台具有较好的可扩展性,能较好满足食品药品生产企业、运输企业及监管部门对冷链各环节数据的采集、获取和查询要求。 关键词:冷链;云平台;数据监控;报警推送;SSM 中图分类号:TP311? ? ? ?文献标识码:A 文章编号:1009-3044(2019)24-0042-03 开放科学(资源服务)标识码(OSID): Design and Implementation of Cold Chain Cloud Platform Based on SSM ZHU De-Jian, HU Ping (School of Computer and Information, Anhui Polytechnic University, Wuhu 241000, China) Abstract: In terms of production, transportation and storage, the traditional cold chain solutions has the problems of labor-intensive manual monitoring, alarm messages pushing are not timely, and insufficient for traceability and evidence collection. With the help of Alibaba Cloud platform, Internet of Things technology and SSM development framework, this paper realized the real-time monitoring, recording, query and alarm push functions that the entire link of the cold chain are involved, the software and hardware architecture of the platform are expounded, and the core functions such as data transmission and reception protocol, representation logic, and alarm message delay pushing are designed. Tests show that the cloud platform is extensive and meets the requirements of food and drug manufacturers, transportation companies and regulatory authorities for collecting, obtaining and querying data in all aspects of the cold chain. Key words: cold chain; cloud platform; data collection; alarm pushing; SSM 1 背景 近年来,国内外医疗事故频发,引起了全社会以及相关媒体的关注。众所周知,高温会使药品的药效迅速降低,或使蛋白质变性。药品的稳定性不仅与其自身的性质有关,在很大程度上还受到许多外界因素的干扰,如温度,湿度,光线,空气中的氧气等。这些因素往往会使药品发生分解、挥发、沉淀、潮解、酸败、生霉等变化。若超出温度范围,药品会随即失效。目前我国的医药冷链物流体系在智能信息化方面的发展比较滞后,无法满足现代医药冷链的实际需求。因此,如何实现各级药品管理单位的冷链实时监测,已经成为国家有关部门非常關注的课题。在药品包装领域,国家食品药品监督管理总局下发的《药品经营质量管理规范》(GSP)明文规定了药品流通、存储等环节的温湿度要求,且每个环节需实时监测药品所处的温湿度数据。因此保持医疗药品云冷链各个环节的可靠性是至关重要的。 市场上存在的冷链系统中大多只有采集、存储数据的功能,用户读取数据需要通过有线方式连接电脑,满足不了GSP关于温湿度数据实时上传读取的要求,如若温湿度数据被修改,可能会导致一些重大危害事件发生。 针对GSP关于冷链温湿度数据实时监测的要求,本文研发了基于SSM的云冷链监测系统。平台采用SSM框架搭建,智能云冷链技术通过相关物联网技术对温湿度数据进行多点实时监测控制,采集的数据信号通过无线服务技术,将数据实时传输至后端服务器。用户可通过访问电脑端冷链监测云平台或移动端应用程序,实时查看温湿度数据,设备地理位置等信息。 2 平台架构 2.1 总体架构 该平台设计基于Spring+Spring MVC+Mybatis框架,系统部署于阿里云服务器,用户通过web服务端(浏览器或者微信公众号扫码)访问数据库,并向控制模块下发指令,数据采集模块通过HTTP(GPRS或WIFI)发送数据给服务器,可实现对冷藏设备进行温湿度监测调节,报警处理等相关操作。用户可通过Web服务端向支付接口发送支付请求,支付接口实现支付回调给Web端。系统前端采用Jquery技术和MUI框架构建基于HTML5的Web端界面;后端采用SSM框架和WebSocket协议完成用户与平台之间的交互。系统实现了设备管理、模块管理、状态展示、报警推送、用户管理等功能。软件界面友好、风格简约,在医疗云冷链方面作用广泛。 2.2 软件架构 平台采用SSM框架设计,SSM即SpringMVC、Spring 与 MyBatis 三个开源框架整合而成,它们在三层架构中的功能各不相同,各司其职,它们之间的关系如图2所示。 SpringMVC:是一个前台的控制框架,能够做到自动的值的封装。作为 View 层的实现者,完成用户的请求接收功能。SpringMVC 的 Controller作为整个应用的控制器,负责处理客户端与客户的请求,请求访问过来被DispatcherServlet拦截,并且调用controller层中的相应的方法,最终把结果返回给用户,完成用户请求的转发及对用户的响应。 MyBatis:mybatis是一款轻量级的持久层框架,由ibatis演化而来,它是对jdbc的封装,它让数据库底层操作变的透明。Dao 层,也叫作数据访问层,主要利用MyBatis这一优秀的持久化层框架实现代码与SQL语句的分离,消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索)的实现者,建立与数据库之间的连接,完成对数据库的增、删、改、查功能。 Spring:spring是一个轻量级的控制反转(Inversion Of Control, IOC)和面向切面(Aspect Oriented Programming, AOP)的容器框架,通过使用其独特的配置文件以及注解方式进行开发简化,以整个应用大管家的身份出现。整个应用中所有 Bean 的生命周期行为,均由Spring 来管理,负责协调类与类之间的关系。即整个应用中所有对象的创建、初始化、销毁,及对象间关联关系的维护,均由 Spring 进行管理。 2.3 硬件设计 数据采集模块的硬件主要包括温湿度传感器模块(温湿度传感器用于读取冷链保温箱内温湿度数据,该传感器具有体积小、抗干扰能力强、精度高的特点。传感器通过规定的数字信号通过与主处理器的连接实现温度和湿度的数字输出。)、GSM通讯模块(冷链云平台采用GSM通讯模块。该模块是一款四频段GSM/GRPS。另外该模块内嵌TCP/IP协议栈,支持多个Socket及IP地址。单片机通过发送指令与通讯模块进行通信。以实现网络连接、数据传输功能。)、显示模块(该模块可以显示时间、温湿度数据、网络信号等数据)、GPS定位(高灵敏度、低功耗,支持辅助全球卫星定位系统,提高设备定位精度和速度)、另外扩展模块可外接显示屏和传感器,各模块之间的结构与关系如图3所示。 3 核心功能设计 3.1 数据发送协议 平台的每个数据采集模块有唯一的id来标识,以16位十进制整数形式的字符串存在,分别为14位主模块地址加上2位从模块地址,例如:“1000200030000107”,14位加2位(主机号为00)。向服务地址“http://公网IP或域名/api/upload.do?vc=校验码&id=…”发送数据。对于校验码部分,将当前字符加下标(从0开始)对40的余数累加到sum的方式进行累加,然后将 sum乘以37,对21867异或,再对65536求余数(以保留低16位,最后转换为余数的16进制(小写使用32位的类型保存sum),得到结果vc=校验码&,进而将URL拼接,构成最终的URL。服务器校验完成以后,将返回信息给数据模块,返回值若为“s!(s=1-9)”,表明数据发送失败(1-9分别代表不同的数据发送失败的原因)。若是“0…!”表明数据发送成功,字符0表明服务器接收了该条数据,同时回传字符串中还包含一些由用户在web端定义的其他信息,以便随时控制采集模块。 数据采集的时间由19个字符组成,形式为“yyyy-MM-dd-HH:mm:ss”通过服务地址 http://公网IP或域名/api/now.do?tk=796392e20e43bbdaa69372e3df576f51获取数据采集时间,tk字段值固定,目的是为防止他人获取时间,服务返回结果为字符串,形如“2016-11-12 09:22:33!”,最后的!为结束字符。 3.2 设备状态展示 客户和管理员可以对设备的属性進行编辑,设置报警阈值和模块绑定。在Web端,系统以卡片视图、表格视图、地图视图、曲线视图和数据视图实时向用户展示设备状态、冷链使用状态、工作状态,实时监测数据,并可以随时导出历史数据,历史时间段的温度曲线图,打印月度报表等。 设备状态分布显示在地图上,如果设备温湿度数据发生异常,在地图上会用红色标记出问题设备,实时显示,向用户发出提醒,同时以短信,微信提醒等多种方式向用户报警。用户和管理员可以通过Web端查看监控点位的温湿度记录仪变化情况,实现远程监测,如若设备发生异常,可以在Web端实时在线处理,实现了设备监测的自动化。 3.3 报警消息推送 报警推送是各类设备监控软件系统不可或缺的功能之一,本系统所采用的报警推送方法弥补了目前普遍采用的报警消息推送方法的不足,例如当设备状态连续或频繁处于设定阈值之外时,短期内大量推送的报警信息可能导致接收者厌烦甚至错过重要的报警信息。又或者不能满足企业不同级别人员(如一线值班人员、管理人员和决策人员)对设备报警消息的不同关注度要求。 本系统采用支持多级别延时的报警消息推送方法,主要推送逻辑如图所示。即当云平台接收到一条消息并存储后,将所得数据与历史数据进行比对,若数据正常则更新设备最新状态表,若有连续多条设备不正常,则进入延时级别推送判断。对已经关注设备但没有收到推送消息的客户根据数据的推送延时级别进行处理。延时处理的具体方法为: 1)计算数据D的推送延时级别L; 2)获得所有关注了对应设备V且推送延时级别为L的用户列表U; 3)判断用户列表U中的数据是否处理完毕; 4)如果没有处理完毕,则对于U中的每个用户,生成相应的报警消息P并入队到报警推送消息队列Q,报警时间设置为上条数据C的报警时间; 5)如果处理完毕,更新设备最新状态表。 以短信、微信公众号、PC端报警等方式向设备关注者报警。此逻辑通过比较当前数据和历史数据的状态变化,引入了延时机制,满足了不同级别人员对同一报警消息的不同关注度。 4 平台实现与测试 4.1 平台实现 平台开发基于SSM框架,sping+springMVC+mysql集成的框架。 MVC即model view controller。model层=entity层。存放我们的实体类,与数据库中的属性值基本保持一致,实现set和get方法。 service层。给controller层的类提供接口进行调用,存放业务逻辑处理,也是一些关于数据库处理的操作,其主要是存放了查询数据的各种方法,但它不是直接和数据库打交道,他有一个接口和还有接口的实现方法,在接口的实现方法中需要导入mapper层,而这个mapper层是直接跟数据库打交道的,他也是 个接口,只有方法名字,具体实现在mapper.xml文件里,service只是供我们使用的方法。在开发的过程中,service层被处理为实体Service层,而不是接口,业务逻辑直接写在Service(Class,不是Interface)层中,Controller直接调用Service,Service调用Mapper,Service之间也是可以互相调用。 mapper层也就是dao层,现在用mybatis逆向工程生成的mapper层,其实就是dao层。对数据库进行数据持久化操作,它的方法语句是直接针对数据库操作的,主要实现一些增删改查操作,在mybatis中方法主要与xxx.xml内相互一一映射。而service层是针对我们controller,也就是针对我们使用者。service的impl是把mapper和service进行整合的文件。 controller层。控制层,也是核心控制器。负责具体模块的业务流程控制。在controller层中的类里面一定要导入service层,需要调用service逻辑设计层的接口来控制业务流程,controller通过接收前端传过来的参数后进行业务操作,然后再给前端返回一个指定的路径或者数据表。 4.2 平台测试 基于SSM的冷链云平台部署于阿里云服务器,并外接一个GPRS无线接收端,可接收数据采集终端的数据并传输至PC监控台,在PC端呈现实时温湿度数据,温湿度数据曲线图表(图5),设备地理位置(图6)显示等。下图是测试同一设备在不同时间的温湿度数据,并将这些数据以曲线视图的形式实时显示给用户,同时用户也可在移动端查看地图视图,了解设备的所在实时位置以及设备状态。 5 结束语 基于SSM冷链云平台能根据药品冷链温湿度数据的实时监测及GSP规范要求,对冷链设备进行实时监控,实现监控工作的自动化和监测的实时性、准确性,减少了人工监测的成本,降低了因误差监测导致带来的不必要的价值损失。温湿度传感器实时采集温湿度数据,地理位置通讯模块传送实时位置,通过GPRS传送数据至后端云平台。冷链监测云平台作为后端监测平台,为用户呈现实时温湿度数据、地理位置等信息。测试结果表明:该平台实时监测温湿度数据精度优良,无线传输数据稳定可靠,无数据丢失现象发生。 由于开发初期系统还存在着一些不足,例如数据采集的实时性方面还有待提高,采集数据的存储效率也需要进一步的加强,更加合理的设计数据存储方式,提高數据的查询效率。在未来,随着计算机技术、通信技术以及无线传感技术的不断发展,冷链监测数据的可靠性实时性都会有很大的提高,传输效率也会有极大地改善,我们会不断对系统做出优化和完善!使其广泛应用于医疗药品云冷链领域。 参考文献: [1] 张露露, 姚骏, 李霄玉. 基于GPRS技术的车载冷库远程监控系统的设计[J]. 工业控制计算机, 2017, 30(4): 19-23. [2] 刘晓亮, 王文铭. 我国医药冷链物流发展的问题与对策[J]. 物流工程与管理, 2010(11): 1-3, 6. [3] 熊颖, 田超. 我国医药冷链物流发展现状及其问题浅析[J]. 现代营销, 2011(5): 147. [4] 师绘敏. 我国医药冷链物流发展中存在的问题及对策研究[J]. 中国医药指南, 2012(19): 398-399. [5] 钟秀英. 我国药品冷链物流现状、成因与发展策略分析[J]. 中国市场, 2012(2): 22-24, 30. [6] 张庆年, 李东久. 医药品冷链物流运输体系的构建[J]. 交通企业管理, 2012(11): 58-60. [7] 朱超才. 物联网环境下农产品冷链监控与追溯平台研究[J]. 山西农业大学学报: 社会科学版, 2015(5): 485-490. 【通联编辑:谢媛媛】 |
随便看 |
|
科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。