为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

糖化血红蛋白检测系统控制软件设计

2010-12-16 4页 pdf 1MB 31阅读

用户头像

is_615702

暂无简介

举报
糖化血红蛋白检测系统控制软件设计 VOL.25 No.01 2010年第25卷 01期 19 RESEARCH WORK 研究论著 糖化血红蛋白检测系统 控制软件的设计与实现 Design and Implementation of Control Software in Glycosylated Haemoglobin Detection System [摘 要] 针对基于离子交换色谱法的糖 化血红蛋白检测系统,提出了一种控制 系统方案,并重点对其控制软件部分进 行了设计与实现。控制系统采用模块化 设计思想,提高了开发效率。控制软件 部分给...
糖化血红蛋白检测系统控制软件设计
VOL.25 No.01 2010年第25卷 01期 19 RESEARCH WORK 研究论著 糖化血红蛋白检测系统 控制软件的与实现 Design and Implementation of Control Software in Glycosylated Haemoglobin Detection System [摘 要] 针对基于离子交换色谱法的糖 化血红蛋白检测系统,提出了一种控制 系统方案,并重点对其控制软件部分进 行了设计与实现。控制系统采用模块化 设计思想,提高了开发效率。控制软件 部分给出了设计结构和关键程序,实现 了数据库的连接、串行接口的通讯、数 据结果的采集和曲线绘制等。经测试表 明,该系统性能可靠,各项指标均能满 足用户日常检测的需要。该方案的设计 与实现,也为后续的嵌入式开发和其他 相关仪器的研发奠定了良好的理论和实 践基础。 [关键词] 糖化血红蛋白检测系统;糖化血 红蛋白;色谱法;医疗检验设备 [中图分类号] TP311.52 [文献标志码] A [文章编号] 1674-1633(2010)01-0019-04 王云光1、2,杜海涛1,王文霞2,张超1 (1.上海理工大学 医疗器械与食品学 院,上海 200093; 2.上海医疗器械 高等专科学校 医用电子信息系,上 海 200093) WANG Yun-guang1,2, DU Hai-tao1, WANG Wen-xia2, ZHANG Chao1 (1. School of Medical Instrument and Food Engineering ,University of Shanghai for Science and Technology,Shanghai 200093,China;2. Medical Electronic Information Department, Shanghai Medical Instrument College, Shanghai 200093,China) 0 前言 糖尿病(Diabetes Mellitus,DM)是由于人体内胰岛素缺 乏或相对缺乏所致的一种慢性内分泌代谢性疾病,以糖代谢 紊乱为突出表现,未治疗状态下,以高血糖为主要特征,并 伴有蛋白质及脂肪代谢异常 [1]。目前糖尿病已成为一种严重 影响人类健康的疾病,根据世界卫生组织官方预计,至 2030 年中国糖尿病患者将超过 4千万,全世界将达到 3.66 亿 [2、3]。 临床上已广泛开展检测患者血糖的工作,但由于血糖仅能反 映某一具体时间的血糖水平,容易受到进食和糖代谢等相关 因素的影响,所以并不能作为评价疾病控制程度的指标。 糖化血红蛋白(Glycosylated Haemoglobin, GHB)指标能 够反映测定前 120 天(即红细胞生命期)内平均血糖水平, 相比于血糖监测,更能作为血糖控制的长期评估,现 已成为了糖尿病监测的“金指标”,并且该指标获得了美 国国家糖化血红蛋白标准化项目(National Glycohemoglobin Standardization Program, NGSP)的极力推荐和认可[4]。本文所 研究的糖化血红蛋白检测系统采用低压液相的生化分析方 法,对糖化血红蛋白中的各组分进行全自动的处理与分析, 并最终达到检测各指标的目的。 1 基本原理 糖化血红蛋白检测系统的分离部分采用了低压离子交换 层析技术与梯度洗脱技术相结合的色谱分析方法,从经溶血 处理的全血中分离出血红蛋白亚基及变异体。低压离子交换 技术是使用表面有离子交换基团的离子交换剂作为固定相, 不同离子与交换基的作用力大小不同,在树脂中的保留时间 长短不同,从而被相互分离。梯度洗脱技术主要是通过改变 流动相中各溶剂组成的比例来改变流动相的极性,使样品中 的所有组分可在最短时间内实现最佳分离 [5]。糖化血红蛋白 检测系统采用二者相结合的方法,使得糖化血红蛋白中的各 组分能够得到最佳的分离效果。 糖化血红蛋白检测系统的检测部件属于光学式分析系 统,采用的是紫外 /可见光 (UV/Vis) 检测器,又称为吸光光 收稿日期:2009-07-15 修回日期:2009-10-21 本文作者:王云光,副教授,硕士生导师。 作者邮箱:dhttony@yahoo.com.cn Abstract: According to the glycosylated haemoglobin detection system based on ion-exchange chromatography, this paper puts forward a scheme of control system, and then detailed description of control software is presented. The modularization design of the detection system improves the development efficiency. The design structure and key program is given in the part of control software; database connection, serial interface communication, data acquisition and curve drawing is also realized in this part. The testing results indicate that the system performance is reliable, and all indexes can meet requirements of routine testing. The design and implementation of this scheme also lays a theory and practice foundation for the further embedded development and the related instrument research. Key s: glycosylated haemoglobin detection system; glycosylated haemoglobin; chromatographic method;medical inspection equipment VOL.25 No.01 2010年第25卷 01期20 RESEARCH WORK 研究论著 度检测器,是通过测定物质在流动池中吸收紫外 / 可见光的 大小来确定其含量的。其定量分析的基础是朗伯 -比耳定律, 表达式如下: 式中A为吸光度, 为入射光强度, 为透射光强度, 为摩尔吸光系数 , b 为流通池的光程长度,c为被探测样品溶 质的浓度 [5]。由上式可以得出,对于给定的检测池长度,在 固定的波长下,待测物的吸光度正比于其浓度。基于此原理, 糖化血红蛋白检测系统的检测器采用了定长检测池的单波长 检测方法,并利用光电接收元件检测各组分的透光度,转换 为吸光度,并最终计算得到待测物各组分的比例。 2 系统总体结构 糖化血红蛋白检测系统是一个复杂的光、机、电一体的 常用医疗检验设备,它主要由进样系统、反应系统、检测系 统和控制系统等部分组成。其中控制系统是整个仪器的核心。 如图 1所示。 图 1 糖化血红蛋白检测系统总体结构 进样系统主要负责样品流动过程的进行,包括吸样、排 样和清洗等;反应系统是利用离子交换层析和梯度洗脱的技 术对样品进行检测前的预处理;检测系统是对离子交换层析 后的各物质进行吸光度的测定。 控制系统采用的是模块化设计,分为控制硬件和软件两 部分。之所以采用这种设计,主要是考虑到 PC 屏幕显示的 优越性、单片机开发的高效性以及模块化设计的稳定性和可 靠性。需要指出的是,这种设计方案主要是前期验证性开发 的需要,并不是糖化血红蛋白检测系统中控制系统设计的最 终方案。其中,软件主要负责人机交互界面以及对硬件的控 制,硬件主要负责对步进电机、蠕动泵、样品阀、比例阀、 注射器等机械部件进行控制,对光电检测信号进行处理。 3 控制系统硬件的设计 硬件电路采用的是 C8051F060 控制芯片,该控制芯片 功能强大,其特点主要有高速、流水线结构的 8051 兼容的 CIP-51 内核(可达 25MIPS);两个 16 位、1 Msps 的 ADC, 并且带有DMA(Direct Memory Access, 直接存储器存取) 控制 器;丰富的数字 I/O 引脚 (59 个 );4352(4K+256)字节的片 内 RAM ;64KB 可在系统编程的 FLASH 存储器;5 个通用的 16 位定时器;两个 UART 串行接口等 [6]。控制系统硬件结构 如图 2所示。 图 2 控制系统硬件结构图 其中,检测器输出的模拟量通过 C8051F060 的 ADC0( 模 数转换 0 通道 ) 转化成数字量,数据采集时利用 C8051F060 集成的 DMA 控制器直接读入单片机的内存。DMA 是一种不 经过 CPU 而直接从内存存取数据的数据交换模式。其优点是 其进行数据传输时不需要 CPU 的干涉,可以大大提高 CPU 的工作效率。DMA 接口与 ADC0 和 ADC1 协同工作,将 ADC 输出直接写入指定的XRAM(Expanded RAM, 扩展数据存储器) 区域。利用软件通过使用特殊功能寄存器来配置 DMA 接口。 通过 DMA 控制逻辑来访问指令缓冲器,从 ADC 获取数据, 并控制将数据写入 XRAM。DMA 指令告诉 DMA 控制逻辑从 哪个 ADC 读取结果,但并不启动 ADC 转换。DMA 控制流程 如图 3所示。 图 3 DMA控制流程图 4 控制系统软件的设计 4.1 底层软件的设计 图 4 底层软件结构 MCU(Micro Controller Unit,微控制器)系统控制器的内核 是 CIP-51 微控制器。CIP-51 与 MCS-51 指令集完全兼容, VOL.25 No.01 2010年第25卷 01期 21 RESEARCH WORK 研究论著 可以使用标准803x/805x 的汇编器和编译器进行软件开发[6]。 底层软件主要通过 C 语言和汇编语言相结合的方式来控制硬 件,控制系统底层软件结构如图 4 所示。主要函数及功能如 表 1所示。 表 1 底层软件函数名称及功能 函数功能 Init() 系统初始化 PORT_Init () 端口初始化 UART_Init () UART初始化 DMA_Init() DMA的初始化 RunSample() 运作样本 StartStepper() 启动步进电机 TXBYTE() 通过串口发送1字节的数据 PIDControl() 温度控制 MotorTurnClockwise() 正向转动换向阀 StartWash() 开始冲洗 Start Decontamination() 开始去污 …… …… 4.2 人机交互界面的设计 人机交互界面的设计要考虑到两方面的因素 :一是要 有良好的界面,使得用户能够进行直观、高效的操作 ;二 是要保证与硬件之间进行有效的通讯和传输。基于这两个因 素,选择了Microsoft公司的Visual Basic 6.0 开发工具(简称 VB)。首先,VB 的易用性使其成为了世界上使用最为广泛的 程序设计语言之一;其次,VB 所自带的 MSComm 串口控件, 可以方便地实现串口的通讯;同时,VB 与 SQL Server 2000 数据库的完美结合,使得数据的管理变得易于操作。 4.2.1 人机交互界面功能需求 控制软件主流程为:由用户输入或条形码扫描输入 ID 号 ( 病人编号 ),点击运行样本后,进行检测,将检测得到 的数据实时显示在屏幕上,而后对数据进行计算,将所得 结果显示并存储,最终生成报表并打印。基于此主流程, 控制软件要具有用户输入病人信息界面、检测过程数据和绘 图的显示、数据的打印和检索、工程师维护菜单以及接口通 讯等功能。 4.2.2 人机交互界面总体设计 图 5 人机交互界面菜单的结构示意图 基于软件功能需求,将控制软件分为样本运作、数据处 理、系统设置、工程师维护等 4 大模块,其具体结构如图 5 所示。 4.2.3 关键模块的设计与实现 4.2.3.1 输入病人信息 用户通过交互界面手动或条形码扫描进行病人信息的输 入,接着,控制软件通过与 SQL Server 2000 数据库的连接, 将输入的信息保存到数据库中。与数据库连接的部分代码 如下 : Private Sub addnew() ' 向数据库里添加记录过程 isql = "select * from DB_Patient" '查询语句,从病人信息 表中查询所有数据 Set irs = executesql(isql, mymsg) '执行数据库连接操作, 并返回提示信息 irs.addnew '为可更新的 rdoResultset 对象建立一个新行[7] irs.Fields("ID") = Trim(Text_ID.Text) '添加病人编号 irs.Fields("Patient_name") = Trim(Text_ Patient_name.Text) ' 添加病人姓名 If optPatient_sex.Value = True Then ' 添加性别 irs.Fields("Patient_sex") = " 男 " Else irs.Fields("Patient_sex") = " 女 " End If irs.Fields("Patient_age") = Trim(Text_ Patient_age.Text) '添 加年龄 If Len(Text_ Birth_date.Text) <> 0 Then '添加出生日期 irs.Fields("Birth_date") = Trim(Text_ Birth_date.Text) End If …… irs.Update '将复制缓冲区行的内容保存到一个指定的可 更新的 rdoResultset 对象中 [7] irs.Close ' 关闭用于数据库连接的对象 End Sub 4.2.3.2 串行接口的通信 在控制软件中,利用 VB 自带的 MSComm 组件,可以轻 松实现对串口的控制。部分代码如下: Private Sub Form_Load() ' 窗体初始化、串口初始化 ' 对串口进行初始化 With MSComm1 .CommPort = 1 .Settings = "9600,n,8,1" '设置串口属性(波特率为 9600,无校验位,8位数据位,1位停止位) ' 接收设置 .InputMode = comInputModeBinary '以二进制形式取回 VOL.25 No.01 2010年第25卷 01期22 RESEARCH WORK 研究论著 .RThreshold = 2 '接收缓冲每收到两个字符就会使 MSComm 控件产生 OnComm 事件 .InBufferCount = 0 ' 清除接收缓冲区 .InputLen = 2 ' 设置从接收缓冲区读取的字符数 ' 发送设置 .SThreshold = 1 '当缓冲区完全空时,使MSComm控件产 生 OnComm 事件 [7] .OutBufferCount = 0 ' 清除发送缓冲区 .OutBufferSize = 2 '以字节的形式设置并返回传输 缓冲区的大小 End With If MSComm1.PortOpen = False Then MSComm1.PortOpen = True ' 打开串口 End Sub 4.2.3.3 检测结果的采集 硬件通过串口通信协议,将检测系统所得数据传送给控 制软件,通过触发 MSComm 控件的 OnComm 事件,将检测结 果保存在 PC 中。部分代码如下: Private Sub MSComm1_OnComm() 'OnComm事件标志发生 了一个通讯事件 [7] ' 读取串口传送的数据 Select Case MSComm1.CommEvent Case comEvReceive ' 当收到 Rthreshold(=2) 个字符。 Inbyte = MSComm1.Input '将收到的值保存至Inbyte数组 datatemp(i) = Inbyte(1) + Inbyte(0) * 256 '传输结果=低8 位 +高 8位 *256 Erase Inbyte ' 将数组每个元素设为 0。 i = i + 1 Call draw ' 调用绘制图形过程 End Sub 4.2.3.4 曲线的绘制和显示[8] PC 在接收到数据后,利用 VB 的 Picture 控件及其 Line 方法,可将采集的数据实时地显示在屏幕上,并通过相应的 积分和比例计算,得出最后的结果。限于篇幅,在这里只给 出主要流程图,如图 6 所示。根据此流程图,可得到曲线绘 制界面。 5 结论与展望 糖化血红蛋白检测系统中软件的设计是整个系统的灵 魂。经过长时间的研制与开发,该软件设计方案已经实现, 同时解决了工程中的许多问。经大量实验测试,各项性能 指标均达到行业标准,能够满足用户日常检测的需要。 然而,模块化设计的方法,虽使得开发进度较快,并且 提高了检测系统的自动化程度和各模块的运行效率,降低了 故障率,但采用软硬件分离的方法,不利于系统的集成,若 仅采用单片机的结构,则图形用户界面实现较为困难,同时 对网络的支持较差。针对此问题,本实验室正在利用嵌入式 技术进行糖化血红蛋白检测系统的二次开发。因此,本方案 的设计与实现为后续的嵌入式开发奠定了良好的理论基础和 实践依据。 [参考文献] [1] 杜惠峰,傅中滇.糖尿病及其国内流行现状[J].生物学教学, 2002,27(1): 4-5. [2] World Health Organization. Country and regional data [EB/OL]. [2009-7-18]. http://www.who.int/diabetes/facts/world_figures/ en/index.html. [3] Sarah Wild, Gojka Roglic, Anders Green, et al. Global Prevalence of Diabetes: Estimates for the year 2000 and projections for 2030[J]. DIABETES CARE, 2004,27(5):1047-1053. [4] 洪天配.关于HbA1c测定全球标准化的共识[J].中国糖尿病杂 志,2007,15(12):768. [5] 徐秉玖.仪器分析[M].北京:北京大学医学出版社,2004. [6] 潘琢金.C8051F06X混合信号ISP FLASH 微控制器数据手册 [M/OL].(2004-12) [2009-7-18]. http://www.xhl.com.cn/sjsc/ sjscdetail.asp?sid=29. [7] Microsoft Corporation. MSDN Library Visual Studio 6.0(CHS) [M/OL].(2005)[2009-7-18]. http://msdn.microsoft.com/zh-cn/ vbasic/default.aspx. [8] 张宪青,李修仁.用VB6.0实现PLC与上位机串行通讯及实时曲 线显示[J].组合机床与自动化加工技术,2005(9): 29-30. 图 6 曲线绘制流程图 C
/
本文档为【糖化血红蛋白检测系统控制软件设计】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索