新闻中心

EEPW首页 > 手机与无线通信 > 设计应用 > 基于ZigBee的药品库存实时管理系统的设计与实现

基于ZigBee的药品库存实时管理系统的设计与实现

作者: 时间:2013-04-22 来源:网络 收藏

2.2 数据传输模块
在本系统中,手持药监码采集设备群以自组织形式构成网络,并最终将数据传送到与PC链接的数据基站,然后通过互联网上传至远端的数据中心。结合药房的实际使用情况,手持终端设备可能会有多个,所以通信系统采用星形网络结构。星形结构是一个辐射形状的网络结构,所有的数据都需要汇聚到中心节点(协调器)而其他的节点之间不能进行数据通信,如图3所示。

本文引用地址:https://www.eepw.com.cn/article/153527.htm

b.JPG


在此网络结构中ZigBee协调器接收到终端节点的数据信息之后,首先对数据信息进行数据包解析,确认该信息为数据信息后对此信息负载进行提取,并将获得的数据信息通过串口显示到仓库PC的系统当中。
ZigBee终端节点在网络组建过程中担任两项工作:发起加入协调器所在的网络请求;接收协调器的广播信息并向协调器传送药监码数据。
(1)手持数据终端节点入网设计。终端节点上电初始化之后向整个ZigBee网络发送信标(Beacon)请求,当协调器接收到信标响应后,终端节点再对发送信标响应的节点发送连接请求,协调器得到链接请求响应正确,那么表示节点入网成功,负责,节点入网失败,并且给出失败提示。
(2)手持终端ZigBee节点数据发送设计。设计一个数据发送函数,此函数负责应用测(APL)与下层之间的参数和数据传递,数据传输格式为20位的药监码。当终端在发送数据时,数据包自顶向下进行帧格式化,各层负责为其数据包添加各层数据包头,最后到达PHY层将数据发送出去。
2.3 库存管理系统模块
2.3.1 开发语言及模式
上位机的库存管理系统采用java语言编程,使用struts1.2框架,在My Eclipse中开发调试,对系统的设计如下:本系统结构上采用3层,前台用户显示层使用JSP和Servlet在浏览器上实现,中间使用Java Bean组件实现企业业务逻辑,后台使用action完成用户请求及相关操作跳转。为了方便数据的存储查询,使用SQL Server2008数据库,通过JDBC建立系统与数据库的连接。
2.3.2 系统功能结构
由系统的需求功能看,本系统主要分为4类用户和5大模块。4类用户为:总管理员,省级管理员,市级管理员,分销商管理员。5大模块为:库存信息管理模块,分销商信息管理模块,药品信息管理模块,用户信息管理模块以及数据传递模块。不同类型的用户拥有不同的管理权限和子功能,其中总管理员拥有系统的最高权限。其中数据传递模块为分销商管理员特有模块,用于从串口接受下位机传递的药监码数据,并进行相关判断和处理后存入数据库。串口通信应用javax.comm.SerialPort类实现,它用于描述一个RS 232串行通信端口的底层接口,定义了串口通信所需的最小功能集。用户可以直接对串口进行读、写及设置操作。串口通信应用程序采用事件监听模式,实现Serial Port Event Listener接口,当串口有数据到达时,可以在serialEvent中接收并处理所收到的数据。
系统中的库存查询界面采用级联下拉列表形式,通过Java Script实现动态链接。库存查询结果页面采用Ajax技术实现实时刷新功能。在Ajax中主要通过XMLHttpRequest对象处理发送异步请求和回应,创建前要先确定用户当前使用的浏览器类型,然后根据浏览器类型创建合适的XMLHttpRequest对象,调用指定方法,最终通过Java Script将内容设置到指定的显示区域。
2.3.3 数据库结构
根据本系统需求,图4所示为数据库信息表的关系结构。各个数据表之间通过不同列建立关联,实现多个数据表的联合查询。

c.JPG


(1)药品-库存-分销商。PC机串口接收药品信息后,系统在药品信息表中查询对应的产品信息,并检索库存信息表,修改相应库存状态,或添加新记录。
用户查询库存信息时,系统根据所选用户的编号检索库存信息表,按照药品产品编号分类,统计各包装级别的库存数量。
(2)用户一分销商。用户表中存储用户的类型及管理范围,登录时,系统根据用户类型进入不同的主界面,根据用户的管理范围显示不同的管理功能。其中分销商和管理员之间为一对一关系。
(3)分销商-市-省。分销商信息表,市信息表,省信息表通过编号相互关联,构成一个3级下拉列表菜单。



评论


相关推荐

技术专区

关闭