药品质量安全追溯系统设计方案.docx
《药品质量安全追溯系统设计方案.docx》由会员分享,可在线阅读,更多相关《药品质量安全追溯系统设计方案.docx(46页珍藏版)》请在冰豆网上搜索。
药品质量安全追溯系统设计方案
2012年全国职业院校技能竞赛高职组
“物联网应用技术”项目
开放式命题作品
---药品质量安全追溯系统
2012.06.14
第一章概述
1.1项目背景
2012年4月15日,媒体曝光多地厂商用废旧皮革为原料熬制成工业明胶,卖给药用胶囊企业。
经检测,13种胶囊产品重金属铬含量超标,最多达90余倍。
4月16日,国家食品药品监管局要求修正药业等药企的13种药用空心胶囊产品暂停销售和使用。
针对食品药品安全监督问题,在今年全国“两会”期间中国电信湖南公司总经理廖仁斌同志提出建议,搭建全国性物联网平台,让消费者通过手机就能方便地了解食品药品的真假和“来龙去脉”,并为政府监管提供有效手段。
他认为,我国食品药品安全事件频现,最核心的问题是缺乏安全有效的溯源技术手段。
传统技术手段在进行“全过程监管”中存在着较多的“盲区”:
企业生产者缺乏对原材料鉴别好坏的有效方法;流通领域食品药品容易被“调包”;食品药品采用的身份标签是一维、二维条码,很容易被仿制;监管部门也缺乏对食品药品生产、销售全部环节有效监管的方法。
目前我国物联网产业链正加速成长,技术手段逐步成熟。
如果能搭建全国性的物联网平台,在所有食品药品生产相关企业推广使用,不仅消费者可以方便地了解食品药品的“来龙去脉”,也为监管部门实施有效监管提供了便捷高效的技术保障。
1.2项目构思
本项目要求设计一个用于药品质量安全追溯的物联网应用系统。
将面向对象编程技术、数据网络技术、RFID技术、二维码技术、传感器技术、Zigbee技术等物联网开发相关技术进行结合,构建实现药品跟踪与信息共享的物联网药品质量安全追溯系统。
1.3建设目标
本药品质量安全追溯系统的总体目标是通过“新大陆物联网智能追溯实训系统”实现药品质量安全信息的追溯。
系统建设任务包括“感知层配置安装”、“传输层配置安装”、“应用层设计开发”、“系统综合调试”四大部分,每个部分的具体目标如下:
通过对感知层的设备安装、接线、编程与调试等工作,实现对环境参数的采集。
通过传输层的设备安装、接线、编码与调试等工作,实现数据向监控应用中心的传输。
通过应用层软件的设计与开发,实现感知节点取数据的采集、上传等功能。
结合移动智能终端实现对药品追溯信息的增、删、改和查等功能。
通过对以上各系统的设计、开发、调试和运行,最终在新大陆物联网智能追溯实训平台上实现一个典型的物联网药品质量安全追溯系统。
1.4运行环境
1.4.1硬件环境
本系统的硬件是基于NLE-PTS01设备即“NEWLAND物联网智能追溯实训系统”设备环境。
1.物联网智能追溯场景模块1套,主要有多功能仿真实训场景设备。
2.物联网智能农业实训模块1套,主要有WSN智能管理设备。
3.物联网追溯感知实训模块1套,主要有手持式扫描设备2台、智能溯源电子台秤1台、重量传感器1台、称重显示器1台、超高频RFID一体化识读器3台、高频非接触IC卡读写器1台等设备及耳标、超高频RFID标签、无线射频IC卡若干。
4.物联网追溯传输实训模块1套,主要有移动智能终端1台、网络摄像机3台、ZIGBEE设备2台、无线网络接入设备2台、查询终端1台、查询主机1台和条码打印机1台。
5.物联网追溯中心管理实训模块1套,主要有管理机2套、中心服务器1台、触摸显示器1台、网络串口转换器1台和网络交换机1台。
1.4.2软件环境
1.操作系统:
Windows7操作系统
2.工具:
.NETFramework4.0、IIS6.0、MicrosoftVS2008、AdobeReader、
MicrosoftOffice2010、MicrosoftVisio2010、IAREmbeddedWorkbenchfor80517.6、Android 开发环境
3.数据库:
SQLServer2008企业版
第二章项目开发计划
2.1任务目标
通过药品安全质量追溯系统的安装、接线、软件编程、系统调试与运行,完成药品生产仓库监测,药品生产登记信息的追溯,药品加工从仓库存储到药品交易的流通环节跟踪等功能。
2.2实施计划
2.2.1前期(2012.05.20-05.22)
任务一、编写系统开发方案(小组讨论)
任务二、进行项目业务分析
任务三、数据库设计
2.2.2中期(2012.05.23-06.10)
任务一、硬件安装与调试
任务二、软件安装及配置
任务三、应用层软件的设计与开发
任务3.1、系统操作界面的设计
任务3.2、PDA药品登记的开发
任务3.3、各功能模块的开发(药品加工入库、药品加工出库、药品销售、药品追溯查询)
任务四、系统测试(不断优化)
2.2.3后期(2012.06.11-06.13)
任务一、编制系统使用手册(详见系统演示视频光盘)
任务二、系统总结
2.3关键问题
1.数据库设计的合理性(一份好的数据库可以让整个系统更有操作性、实用性)
2.DDL的调用(关系到每个流程的联系性以及功能的实现)
3.摄像头抓拍功能的实现(网络摄像头数据中间件的设计)
4.IC卡嵌入药品质量安全追溯系统(IC卡与电子秤的关系)
2.4验收标准
在系统演示时不能出现异常这是前提,在客户端读取药标后进入药品加工入库时能够准确读取药标信息,同样在加工出库时能够准确读取入库时的信息;IC卡信息能够准确被读取;客户端能够动态读取称重传感器的数据;药品生产环节能够准确读取环境参数并上传数据库;无线网络摄像头能够在每个环节中抓拍到图片;电子秤能刷卡开秤,上传数据到数据库;追溯查询能够准确地反映整个系统操作的重要信息。
第三章项目业务分析
3.1可行性分析
3.1.1技术可行性
此项目主要涉及到感知技术、网络通信技术和智能处理技术等三个关键技术。
鉴于系统是在原有设备的基础上进行二次开发,所需的技术通过学习以及参考相关资料能够解决。
所以在技术上可完全承担开发本项目。
3.1.2经济可行性
经过初步预算,支出包括基建投资、其他一次性支出,经常性支出以及效益分析可以得出收益与投资比远大于100%,投资回收周期大概为2年。
所以在经济上此系统是可行的。
3.1.3社会可行性
药品质量安全追溯系统是一个集结亿万药品的生产质量安全的系统,毫不夸张的说,它是一项关系着国计民生的重要环节,不仅为药品生产厂家提供了便捷有效的进销存系统,更重要的是可以让消费者、有关监管部门在足不出户的情况下通过手机、电脑等设备查询药品的来源,并为政府监管提供有效手段。
它使得药品质量安全追溯系统更加理性化也更加人性化,这也是新时代的进步,能够使人们感受到现代科技环境下使用物联网技术的便利。
并且该项目在新大陆物联网实训设备的支持下独立开发,不存在侵权问题。
3.2需求分析
需求分析阶段是药品质量安全追溯系统开发的第一个阶段,它也是一个非常重要的阶段,是整个设计过程的基础,也是最困难、最耗费时间的一步。
需求分析是设计数据库的起点,需求分析的结果是否准确的反映用户的实际要求,将直接影响到后面各个阶段的设计,并影响到设计的结果是否合理和实用。
3.2.1目标与任务
1.目标
1)通过对关键人群的采访、药品监管和运输过程的实地调查以及网上查资料了解大众药品管理的业务流程和药品监管各环节的信息需求,在得到目标对象的确认后进行整理和资料归档。
这些构成了对新系统的基本需求。
2)通过对关键人群的采访、药品监管和运输过程的实地调查以及网上查资料等手段研讨目前药品安全事故屡屡发生的原因(厂家、卖家、消费者)。
以此找出传统安全管理体系在业务流程和数据采集方面缺乏完整性、科学性和系统性的地方。
经过整理和归档就形成了对新系统的核心需求。
2.任务
1)明确消费者、卖家、生产厂家各项需求,在此基础上确定药品质量安全追溯系统的功能。
2)根据分析画出业务流程图、功能框图,并虚心向知情者学习。
3.2.2数据描述
1.静态数据
药品名称、药品种类、规格、有效期、生产厂家、验收员、操作员、验收结果、用户IC号。
2.动态数据
温度传感器、人体传感器、光电传感器、火焰传感器、CO传感器、可燃气传感器等数值、生产日期、入库时间、药品种类、有效期。
入库时间、入库数量、产地检疫证号、验收日期、药品重量、产品重量、出库时间、药品检验合格证号、交易编码、交易日期、交易金额等。
3.2.3数据库介绍
数据库名称NLEDU_DrugTrace
整个数据库分为动态数据和静态数据,他们分别交叉嵌入在系统各个环节的使用。
各个表间的联系是数据库设计的关键。
3.2.4数据词典
《药品质量安全追溯系统》的总体功能如下:
药品生产
药品登记
药品入库
药品出库
药品销售
药品追溯查询
1.药品入库和出库信息表
(1)数据流图
图3-1数据流图
(2)数据词典
数据源点及汇点描述:
名称:
管理员
简要描述:
有关数据流:
用户名、密码、系统选择:
药品质量安全追溯系统、增加入库信息界面、修改入库信息界面,删除入库信息界面,查询入库信息界面信息
数目:
1
加工逻辑词条描述:
加工名:
身份检验
加工编号:
1
简要描述:
检验用户身份
输入数据流:
用户名、密码
输出数据流:
密码正确、身份验证错误
加工逻辑:
IF 用户名为空 THEN
发出“用户名为空错误”
ELSE IF 密码为空 THEN
发出“密码为空错误”
ELSE IF 用户名和密码不符 THEN
发出“用户名和密码不匹配错误”
ENDIF
ENDIF
ENDIF
ENDIF
数据流名词条描述:
数据流名:
用户名
说明:
管理员姓名
数据流来源:
管理员
数据流去向:
身份检验
数据流组成:
用户名=字符型字符串
数据流名:
密码
说明:
与用户名相匹配的密码
数据流来源:
管理员
数据流去向:
身份检验
数据流组成:
密码=短整型字符串
每个数据量流通量:
数据流名:
出错信息
说明:
用于指示身份验证错误的信息
数据流来源:
身份检验
数据流去向:
管理员数据流组成:
出错信息=任意字符串
数据流名:
系统名称
说明:
系统的名称
数据流来源:
数据流去向:
选择
数据流组成:
数据文件词条描述:
数据文件名:
生产批号信息表
简述:
存放生产批号信息
输入数据:
生产厂家
输出数据:
生产批号
数据文件组成:
生产批号信息表由生产批号、生产厂家组成
2.管理员相关操作(增加入库、删除入库、修改入库、查询入库)如图
图3-2管理员操作流程图
(2):
数据词典:
数据源点及汇点描述:
名称:
管理员
简要描述:
管理员信息
有关数据流:
用户名、密码
数目:
1
加工逻辑词条描述:
加工名:
身份检验
加工编号:
1
简要描述:
检验用户身份
输入数据流:
用户名、密码
输出数据流:
密码正确、身份验证错误
加工名:
增加入库
加工编号:
2
简要描述:
根据所读入的操作信息,增加入库信息
输入数据流:
生产批号,产品检疫证号
输出数据流:
增加入库信息
加工逻辑:
根据所读入的操作信息,写入挂钩
数据流名词条描述:
数据流名:
用户名
说明:
管理员的姓名
数据流来源:
管理员
数据流去向:
身份检验
数据流组成:
用户名=字符型字符串
数据流名:
密码
数据流来源:
管理员
数据流去向:
身份检验
数据流组成:
密码=短整型字符串
每个数据量流通量:
数据流名:
药品入库信息
说明:
药品入库信息
数据流来源:
药标
数据流去向:
药品出库信息表
数据文件词条描述:
① 数据文件名:
药品出库信息表
简述:
药品出库信息信息
输入数据:
IC卡信息、挂钩信息、称重显示器信息、入库信息
输出数据:
追溯码
数据文件组成:
药品出库信息由IC卡信息、挂钩信息、称重显示器信息、入库信息组成
存储方式:
关键码
存取频率:
频繁
3.药品入库出库查询过程:
(1)数据流图
图3-3系统登录功能选择
(2)数据词典:
●数据源点及汇点描述:
名称:
药品入库出库
简要描述:
增删改查
有关数据流:
系统选择:
增加入库,增加出库
删除入库,删除出库
修改入库,修改出库
查询入库,查询出库
●数据流名词条描述:
数据流名:
系统名称
说明:
系统的名称
数据流来源:
数据流去向:
选择
数据流组成:
(3).数据表
CREATETABLEUserInfo(
IDINTIDENTITYPRIMARYKEY,
USERNAMENVARCHAR(10)NOTNULL,
LOGIN_NAMENVARCHAR(10)NOTNULL,
PASSWORDNVARCHAR(30)NOTNULL
);
//用户信息表
CREATETABLEDrugCodeinfo(
IDINTIDENTITYPRIMARYKEY,
DrugCodeNVARCHAR(16)UNIQUENOTNULL,
ManufacturerNVARCHAR(10)NOTNULL
);
//药品生产批号信息表
CREATETABLEDrugProductionInfo(
IDINTIDENTITYPRIMARYKEY,
Production_DateDATETIMENOTNULL,
Drug_NAMENVARCHAR(30)NOTNULL,
Drug_TYPEintNOTNULL,
Drug_CodeNVARCHAR(16)FOREIGNKEYREFERENCESDrugCodeinfo(DrugCode)NOTNULL,
Effective_DATEDATETIMENOTNULL,
drugTypeNVARCHAR(30)NOTNULL,
unitNVARCHAR(30)NOTNULL,
PHOTO_URLNVARCHAR(140)
);
//药品信息登记表
CREATETABLEDrugEnterRegister(
IDINTIDENTITYPRIMARYKEY,
numintnotnull,
Drug_NAMENVARCHAR(30)NOTNULL,
STOREROOM_NAMENVARCHAR(30),
QUARANTINE_IDNVARCHAR(30),
QUARANTINE_OFFICERNVARCHAR(10),
QUARANTINE_RESULTNVARCHAR(140),
indatedatetimenotnull,
SIGNDATEDATETIMENOTNULL,
OPERATOR_IDINTFOREIGNKEYREFERENCESUserInfo(ID)NOTNULL,
Drug_CodeNVARCHAR(16)FOREIGNKEYREFERENCESDrugCodeinfo(DrugCode)NOTNULLUNIQUE,
PHOTO_URLNVARCHAR(140)
);
//药品入库信息表
CREATETABLEIcInfo(
IDINTIDENTITYPRIMARYKEY,
ICNONVARCHAR(16)UNIQUENOTNULL,
USER_IDINTFOREIGNKEYREFERENCESUserInfo(ID)NOTNULL
);
//Ic卡信息表
CREATETABLEDrugExitRegister(
IDINTIDENTITYPRIMARYKEY,
ENTER_IDINTFOREIGNKEYREFERENCESDrugEnterRegister(ID)NOTNULL,
EXIT_DATEDATETIMENOTNULL,
QUARANTINE_drug_PRODUCTS_IDNVARCHAR(30),
drug_WEIGHTDECIMAL(12,2)NOTNULL,
OPERATOR_IDINTFOREIGNKEYREFERENCESUserInfo(ID)NOTNULL,
BUYER_ICNONVARCHAR(16)FOREIGNKEYREFERENCESIcInfo(ICNO)NOTNULL,
outnumberintnotnull,
PHOTO_URLNVARCHAR(140),
);
//药品出库信息表
CREATETABLETradeInfo(
IDINTIDENTITYPRIMARYKEY,
SELLER_ICNONVARCHAR(16)NOTNULL,
TRANS_TIMEDATETIMENOTNULL,
GOODS_NAMENVARCHAR(140)NOTNULL,
PRICEDECIMAL(12,2)NOTNULL,
TOTAL_PRICEDECIMAL(12,2)NOTNULL,
GOODS_WEIGHTDECIMAL(12,2)NOTNULL,
TRACE_CODENVARCHAR(16)NOTNULL
);
//药品交易信息表
SETANSI_NULLSON
GO
SETQUOTED_IDENTIFIERON
GO
CREATETABLE[dbo].[FAlarm](
[FID][int]IDENTITY(1,1)NOTNULL,
[FType][nvarchar](20)COLLATEChinese_PRC_CI_ASNULL,
[FVedio][nvarchar](50)COLLATEChinese_PRC_CI_ASNULL,
[FValue][nvarchar](20)COLLATEChinese_PRC_CI_ASNULL,
[FInputTime][datetime]NULLCONSTRAINT[DF_FAlarm_FInputTime]DEFAULT(getdate()),
CONSTRAINT[PK_FAlarm]PRIMARYKEYCLUSTERED
(
[FID]ASC
)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY]
)ON[PRIMARY]
//药品生产环境信息表
SETANSI_NULLSON
GO
SETQUOTED_IDENTIFIERON
GO
CREATETABLE[dbo].[FEnvironment](
[FID][int]IDENTITY(1,1)NOTNULL,
[FTemperature][nvarchar](20)COLLATEChinese_PRC_CI_ASNULL,
[FHumidity][nvarchar](20)COLLATEChinese_PRC_CI_ASNULL,
[FLight][nvarchar](20)COLLATEChinese_PRC_CI_ASNULL,
[FFire][nvarchar](20)COLLATEChinese_PRC_CI_ASNULL,
[FGas][nvarchar](20)COLLATEChinese_PRC_CI_ASNULL,
[FAlcohol][nvarchar](20)COLLATEChinese_PRC_CI_ASNULL,
[FInputTime][datetime]NULLCONSTRAINT[DF_FEnvironment_FInputTime]DEFAULT(getdate()),
CONSTRAINT[PK_FEnvironment]PRIMARYKEYCLUSTERED
(
[FID]ASC
)WITH(PAD_INDEX=OFF,STATISTICS_NORECOMPUTE=OFF,IGNORE_DUP_KEY=OFF,ALLOW_ROW_LOCKS=ON,ALLOW_PAGE_LOCKS=ON)ON[PRIMARY]
)ON[PRIMARY]
//药品生产信息表
(4).数据采集
生产批号由系统打印二维码获得;IC卡由IC卡读卡器读取,重量由称重感应器读取;追溯码由扫描枪读取;产品重量由电子秤读取;药品名称、生产日期药品种类、规格、有效期、入库时间、生产厂家、入库数量、验收员、操作员、产地检疫证号、验收结果、验收日期、出库时间、药品检验合格证号由人工输入;药品生产环境检测的信息由传感器感应数值得到。
3.3系统分析
系统分析通常包括处理对象、处理功能划分以及功能描述等。
3.3.1处理对象
1.药品生产信息:
温度传感器、人体传感器、光电传感器、火焰传感器、CO传感器、可燃气传感器等数值。
2.药品登记信息:
药品名称、生产日期、生产批号、药品种类、规格、有效期、图片相对地址等。
3.药品入库检疫:
入库时间、药品名称、生产厂家、入库ID、入库数量、生产批号、验收员、操作员、产地检疫证号、验收结果、验收日期、图片相对地址等。
4.药品出库检疫:
入库ID、用户IC号、出库时间、药品检验合格证号、药品重量、操作员等。
5.药品交易:
编码、交易日期、交易市场、产品重量、交易金额、交易价格、追溯码等。
3.3.2功能划分
图3-4功能划分图
3.3.3功能描述
药品生产:
该环节通过无线传感器控制药房生产实现智能药品的目的,仓管员可以通过观察无线传感器采集的数据进行远程的控制药品的生产管理。
药品信息登记:
药品检疫机构在给药品做检疫监测时,采用移动智能终端PDA来采集药品检疫等信息,并把该数据上传到中心服务器的数据库,以此作为药品检疫的信息追溯源头。
药品加工入库检疫:
药品运输到加工企业时,必须进行检疫。
在加工企业的电脑上登记药品的来源信息,包括:
入库时间、生产厂家和药品批号等信息。
并通过部署在加工企业的RFID识读设备和二维码识备将药品的种类、药品检疫入库信息通过网络传送到服务器中。
药品加工出库检疫:
在药品加工品出库时,对装箱的药品加工品进行称重,并生成药品出库质量安全信息追溯码并打印,生成药品厂家信息和药品出库质量安全信息追溯码建立关联,实现药品厂家信息与药品加工品流通市场信息的对接,实现药品加工全程的质量安全监控的追溯,并将相关信息上传到服务器中。
药品交易:
在零售商向药品加工品加工企业进货时,凭标识零售商身份的IC卡进货。
药品加工品装箱上有药品加工品的质量安全信息追溯码,当零售商进行分销药品加工品时,利用智能溯源电子称配置的条码扫描枪将药品加工品质量安全信息追溯码粘贴到包装袋上。
市场监管:
加工企业利用智能终端对药品加工品质量安全信息追溯码和零售商IC卡进行识别,将数据发送到中心服务器进行查询,