试管配置机控制系统的设计与实现
2011-11-16余浩史洪飞聂英娟
余浩,史洪飞,聂英娟
解放军总医院 a.计算机应用与管理科;b.门诊部综合治疗室,北京100853
试管配置机控制系统的设计与实现
余浩a,史洪飞a,聂英娟b
解放军总医院 a.计算机应用与管理科;b.门诊部综合治疗室,北京100853
本研究开发试管配置机控制程序,将摆管设备集成到医院信息系统中,发挥出设备的自动化摆管特点,为后续实验室工作流水线、自动化作业准备了基础条件。该系统能根据不同的应用场景,配置不同的使用方式,即“1对1”连接方式或“多对1”连接方式;系统在设计时采用分层结构思想,在该系统框架下,能够较容易为各种品牌的摆管机开发设备接口,而不是绑定在特定的产品上。
HIS;LIS;试管配置机;条形码标签
1 背景
使用试管配置机(也称摆管机或贴管机)可实现自动试管配置[1],同时试管上还自动粘贴带有描述信息及条形码的标签,替换了由人工选择试管、手工粘贴条形码标签等工作环节,而这些环节都是较容易出现差错的地方。为了发挥出试管摆管机的自动化特性,方便实验室使用,需要针对摆管机开发控制程序,实现设备与信息系统的整合[2-6]。试管粘贴的标签除了条形码信息外,还有病人的姓名、性别、科室等自然信息,这为实验室信息系统(LIS)良好地运行准备好了重要的基础条件。解放军总医院自2004年开始使用摆管机以来,取得了较好的效果,摆管机已成为标本采集工作、实验室检验工作的规范化、科学化的重要支撑设备之一。
2 系统体系结构
有关系统的体系结构包括3部分:系统的处理流程、系统的分层结构和系统的主要功能介绍。系统采用PowerBuilder5.0工具开发。
2.1 系统处理流程(图1)
系统获取到用户扫描的条形码内容后,获取病人本次来院的所有需要采集静脉血的检验申请,对于通过费用检验单的检验申请单,逐条计算出每张申请单对应的试管类型及数量,根据系统配置的使用方式,决定后续的处理方式。当使用1个终端直接连接试管配置机,即1对1连接方式时,系统直接把摆管指令发送给摆管设备,而当多个终端共用1个试管配置机,即多对1连接方式时,在每个终端上,将摆管指令生成数据文件,然后把数据文件拷贝到指定目录,由另外1个单独的程序来处理这些数据文件,通过串口,把摆管指令发往设备。
图1 系统处理流程图
2.2 系统的分层结构设计
借鉴网络的7层结构模型的设计思想[7],系统按照功能聚合分为3层,分别为:设备驱动层、数据库交互层和用户交互层。数据就是在这3层之间来回穿梭。分层可使系统简单化,包括程序开发中的简单和后续修改、维护的简单。最后编译成的发布文件中每层都对应1个PBD文件[8],这样便于单个层面的功能升级和错误修正。
2.2.1 设备驱动层
该层主要处理系统与设备之间的通讯协议过程,对在两者之间传递的数据,进行编、解码处理。试管配置机是使用RS232串口与外界进行通讯的,系统在设备驱动层中使用MSCOMM32控件实现与摆管设备之间的通讯[9-10]。有关使用MSCOMM32实现串口通讯中关键的一点是:属性InputLen设置为1,即接收到1个字符时随即触发OnComm事件。
系统已经实现与ROBO系列试管配置机之间的连接,支持MiniROBO、ROBO585和ROBO888。
2.2.2 数据库交互层
该层主要处理对数据库的相关处理,包括数据的获取,数据的增加、删除和修改等操作。由于系统使用了两种数据:网络数据库和本地数据库的数据,系统中同时启用了两个数据库连接对象,分别进行各自的数据库操作。另外,在程序处理中,来自两个数据库中的数据,还需要进行融合,以进行相关业务逻辑判断。
试管配置机控制程序中需要生成几个关键的信息:试管的种类和数量、摆管时间(此时间有时可近似为标本采集时间),这些信息都是在数据库交互层中生成的。另外,在获取时间时,为了保证由于本地机器时间不准确或被更改对摆管时间的干扰,系统采用从网络数据库中获取时间的处理方式。
2.2.3 用户交互层
用户交互层又可以成为用户界面层,该层包括用户的工作界面,获取用户的输入数据,显示从数据库中获取的信息及处理结果。另外,在界面上还显示当前病人每张检验申请单所对应使用的试管类型的图片提示,便于工作人员核对。为了方便操作,可使用条形码扫描枪,可快捷录入病人ID信息或申请号信息。
3 系统实现要解决的关键问题
在设计与开发的过程中,有3个问题需要解决:① 如何根据检验内容得到试管的类型及个数;② 系统与摆管机连接方式的设置;③ 如何在WindowsXP下,使打印机控制连续走纸大小。
3.1 根据检验单内容计算试管类型的算法
该算法实质上是根据定义的字典数据来计算出每张检验申请应该使用何种试管,及试管的数量。有这样几个关键的条件:摆管科室、执行科室(多个实验室的情况)、申请项目信息,根据这些关键条件,在定义的字典数据中,通过关联、对照查找等运算,得到试管的类型及个数。这里用到的自定义字典数据是存放在Sybase SQL Anywhere5.0本地数据库中,采用ODBC的连接方式。
3.2 设置系统与摆管机的连接方式
连接方式主要是指系统的通讯部分,包括:① 系统中与摆管机间通讯模块,支持“一对一”连接方式;② 单独通讯程序,支持“多对一”连接方式。它们的功能是相同的,都是负责和摆管机通讯,完成将摆管指令发送给设备。
至于启用那部分通讯功能,是由系统的使用方式决定的。当1个计算机服务终端直接连接1台试管配置机时(一对一方式),直接启用系统中摆管机通讯模块即可;而当多个计算机终端共用一台试管配置机时(多对一方式),由单独的通讯程序来控制摆管机上,各个终端则与通讯程序之间连接、交换数据,实现与摆管机的间接连接。
3.3 走纸大小控制
在Windows XP操作系统下,很难像在Win98下通过系统的API调用实现对打印纸张的大小控制,而使用第三方的控件也面临诸多困难,而且很难实现。我们最后采用的方法是,为同一个打印机安装多个打印机驱动(亦即在控制面板中的打印机和传真文件夹中对同一个打印机安装多个打印机显示),对每个驱动分别设置不同的纸张大小。而在PB开发环境中,更换不同的打印机或指定打印机,通过修改注册表信息,是很容易实现的。这类注册表信息在该路径下:HKEY_CURRENT_USERSoftwareMicrosoftWindows NTCurrentVersionWindows。
4 系统特点
(1)该系统是部署在采集点服务台上的,使工作界面力求简单、易操作,相关提示信息清晰、简洁,利于工作效率提高。
(2)在系统设计和开发中采用了分层思想,使整个系统结构清晰,便于后续的维护和开发。
(3)系统与摆管设备之间是松耦合的关系,当使用另外一种品牌的摆管设备时,只需更换设备驱动层的模块文件即可,程序中的其他部分保留不变。
5 结论与展望
通过系统的使用和用户的反馈,得出以下2点结论:
(1)摆管控制程序保证了能与多种品牌的摆管机设备兼容,而不是绑定在某一家产品;分层处理设计,使程序中只有设备驱动层功能与设备绑定,其他的功能通用,便于后续修改、维护、开发。
(2)“一对一”或“多对一”的操作方式,实现了根据应用场景选择操作方式的灵活性。
客观环境和需求总是在不断变化的,我们要根据其需求变化不断完善系统的功能。以下2点将是我们下一步的努力方向:
(1)将试管类型计算处理部分“移植”至护士工作站软件,同时辅以图片形式提示试管类型,便于护士正确选择试管类型。
(2)给系统增加小格式的条形码标签打印功能,解决摆管机不能够处理的试管类型,如血沉实验用的细试管等,为此类标本后续工作规范性奠定基础。
[1] Techno Medica Products,ROBO WebSite[OL].(2009-09-01)[2011-06-04].http://www.technomedica.co.jp/English/products.html.
[2] 黄大节,黄晓燕,徐岩军,等.应用串行通信实现检验仪器的数据传送与处理[J].中国医疗设备,2010,25(2):62-34.
[3] 朱有存,白青伟,杨小荣,等.利用MSComm32控件实现检验仪器联机[J].医疗卫生装备,2008,(6):55-56.
[4] 谢程刚,刘泓滨.用PowerBuilder设计串口数据采集程序[J].昆明理工大学学报(理工版),2003,(6):34-36.
[5] 赵兰涛,苏彦华.Delphi串口通信技术与工程实践[M].北京:人民邮电出版社,2004:56-77.
[6] 余浩,薛万国,聂荣娟,等.一种自动化配置试管的标本采集及解决方案[J].中国数字医学,2011,6(2):92-94.
[7] Andrew S.Tanenbaum.计算机网络[M]. 4版.北京:清华大学出版社,2004:1-68.
[8] Bob Hendry.Creating the Executable Pt.2[OL].(2000-08-01)[2011-06-04].http://pbdj.sys-con.com/node/42232.
[9] 丁铖,廖小平.PowerBuilder7.0高级开发指南[M].北京:人民邮电出版社,2000:586-589.
[10] Microsoft MSDN.MSComm Control[OL].(2002-06-04)[2011-06-04].http://msdn.microsoft.com/en-us/library/aa259324(v=vs.60).aspx.
Design and Implementation of Tube Configuration Machine
YU Haoa, SHI Hong-feia,NIE Ying-juanb
a.Computer Section; b.Outpatient Comprehensive Treatment Section,General Hospital of PLA, Beijing 100853,China
The control system of tube configuration machine which is integrated into the HIS system is the basic for the automatic working line of laboratory. And the system can be configured to the effective mode according to different scenarios which are including one to one connection and many to one connection.Additionally, we use the level ideas into design of system, so the framework of the system can be more easily fitted for different products, not a specified product.
HIS; LIS; tube configuration machine; barcode label
TB657.2
A
10.3969/j.issn.1674-1633.2011.11.006
1674-1633(2011)11-0022-02
2011-06-04
2011-09-27
本文作者:余浩,工程师,硕士,主要从事医院信息系统开发研究。
作者邮箱:yuhao05@tsinghua.org.cn