版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PAGE编号本科生毕业论文医生PDA远程无线心电监护软件系统的设计与实现DesignandImplementationofSoftwareSystemforRemoteWirelessECGMonitoringBasedonPDA学生姓名专业电子信息工程学号指导教师学院电信学院摘要PDA(PersonalDigitalAssistant,个人数字助理)凭借其自身的计算能力、与多种无线通讯模块如蓝牙模块、CDMA/GPRS通讯模块等的集成,在医疗领域发挥着越来越重要的作用。将PDA这种便携式终端引入心电实时监护,可以为医生提供了一个全新的、动态的、便携的心电信息处理平台。PDA与远程无线心电实时监护系统的集成,使得不仅病人的心电信息可以被随时随地随意地实时获得,医生对病人心电信息的监护也可以随时随地随意地进行。医用PDA远程心电监护软件是远程无线心电监护系统的一个子系统。它接收通过CDMA-Internet网络传输的病人心电信号,对病人进行实时远程心电监护;并可从心电数据库中下载历史心电数据,对其进行回放分析。首先,本文介绍PDA端软件在整个监护系统中的作用,并阐述了PDA端监护软件的总体设计与框架。然后,介绍了系统的通信模型和通信协议,分章叙述了各个具体功能模块的工作流程、关键技术与实现方法。基于AT89C52低功耗MCU的便携式心电监护仪及其系统的研究。根据人体心电信号的特征,设计性能优良的心电信号采集系统,选用低功耗8位单片机AT89C52和大容量Flash存储器对采集的心电信号进行记录、实时分析及处理。所研制的监护仪带有液晶显示器,能实时显示所检测的心电信号,配合按键提供友好的中文菜单,操作简便,心电数据也可通过RS232接口向上位机传送。该监护仪能长期、连续、可靠、稳定的工作:同时还具有体积小、存储容量大、功耗低等特点,便于随身携带,使用方便。还利用单片机汇编语言编写了信号处理软件模块以及ECG信号特征点的检测模块,配合优良的心电采集系统,液晶显示器能够实时不失真的再现心电信号波形。关键词:PDA远程心电监护CDMA实时监护传输协议AbstractWithpowerfulcomputingabilityandintegrationwithwirelesscommunicationmodulesuchasbluetoothandGPRS/CDMA,PDAplayamoreandmoreimportantroleinfieldofmedicaltreatment.ComparingwithtraditionalHoltersystem,theadvantageofECGRemoteMonitorsystemistheabilitytohelpdoctortoobtainpatients’ECGmorequicklyandcompletely,whichmakeitbemoresuitabletomonitorheartdiseasewhichischronicbutcomeonallofasudden.IfPDAisintroducedtothissystem,toobtainpatients’real-timeECGwillbemoreconveniently.PDAprovidesamobileandconvenientinformationprocessservicetodoctors.WiththehelpofPDA,doctorscanobtainpatients’ECGanytimeandeverywhere.PDAsoftwareSystemofReal-timeECGMonitoringisasubsystemofECGRemoteMonitorsystem.Inthispaper,theroleofPDAsoftwareSystemplaysinECGRemoteMonitorsystemisintroducedfirstly,andthenthearchitectureofPDAsoftwaresystem.Thirdly,communicationmodelandcommunicationprotocolofthesystemaredescribed.TheauthorisengagedinthestudyingandmanufacturingofportableECGmonitoranditssystembasedonAT89C52lowpowerMCU.Accordingtothecharacteristicofhuman'sECGsignal,anexcellentECGsignalsamplingsystemwasdesigned.Furthermore,Themonitoruseslowpower8-bits,singlechipmicrocomputerAT89C52andbulkFlashmemorytorecord,analyst,andprocesstheECGsignalatrealtime.ThemonitorusesLCDtoshowtheECGwavesdetected.Cooperatedwithbuttons,itprovidesamicableChinesemenuandmakesoperationsimpleandconvenient,andtheECGdatacanbetransmittedtoPersonalComputerbyserialRS232interface.Thismonitorcanworkstablyandreliablyforalongtime,andwithsomeexcellenciessuchasminivolume,bulkmemory,lowpower,etc.Itisconvenienttobetakenwithandused.Byuseoftheassemblelanguageinprogramming,theauthoralsomakesanECGauto-analysissoftwaremodule.Thissoftwareisconvenienttobeusedaswellashasfriendlyinterface.WiththeexcellentECGsignalsamplingsystem,theLCDcanshowtheECGwavesdetectedatrealtime.Keywords:PDAECGRemoteMonitoringCDMAReal-timeMonitoringTransferProtocol长春理工大学毕业论文PAGEII目录第一章绪论 11.1课题背景和意义 11.2国内外发展概况 11.3本课题方案思路的形成 2第二章系统总体设计 32.1远程心电监护系统的总体架构 32.2医用PDA心电监护软件的总体设计 42.2.1PDA心电监护软件需求分析 42.2.2PDA心电监护软件架构设计 5第三章心电信号检测电路设计 63.1引言 63.2前置放大器设计 63.2.1心电信号的提取 63.2.2前置放大电路 73.3工频陷波器 83.3.1电路元件参数的设计 93.4低通滤波电路 93.5高通滤波电路 103.6导联脱落检测电路 12第四章单片机数据采集系统 134.1引言 134.2数据存储系统 134.2.1数据缓冲 144.2.2AT29LV040大容量闪存 144.3液晶显示系统 154.3.1硬件连接电路 164.4RS232串行接口电路 16第五章PDA-心电信息中心通信模型 185.1TCP/IP协议 185.2PDA-心电信息中心应用传输协议 185.2.1PDA-心电信息中心控制信息传输协议 195.2.2PDA-心电信息中心心电数据传输协议 195.3Socket编程实现TCP/IP通信 235.2.3Socket通信流程 245.2.4Socket通信的多线程实现 25结论 27参考文献 28致谢 29PAGE38第一章绪论1.1课题背景和意义心脏病是现代工业社会中人类生命威胁最大的疾病之一。随着人们生活节奏的加快以作压力的增加,心脏病的发病率不断增加。在美国、日本和欧洲,心脏疾病居人口疾病死亡率的第一位,在我国居第三位。心脏病己成为危害人类健康的多发病和常见病,因此心脏系统疾病的防治和诊断是当今医学界面临的首要问题。心脏病是慢性病,具有长期带病,急性发病的特点,心脏病患者具有很大的分散性和移动性,大部分患者分布在社会上(家中或工作场所),处在日常的工作和生活中,具有较大的活动范围。据我国卫生部数据中心统计,70%以上的心脏病患者是在社会上或家中突然发生冠心病急性事件(恶性心律失常或急性心肌梗塞),大部分人因失去抢救时间死于医院外[1]。这些病人如果能够获得及时的抢救与护理,是很有可能避免死亡的。因此,对心脏病人进行长期甚至是终生的心脏监测是非常必要的,可以预先发现异常征兆并及时给予救治,可以大大降低死亡率和致残率,同时降低医疗费用。1.2国内外发展概况心脏远程监护是远程医疗[2]中的远程监护(TeleMonitoring)和家庭护理(HomeHealthCare)的一个应用,远程监护技术是近年来远程医疗非常重要的一个研究领域,但在远程医疗中又是一个相对薄弱的研究领域。远程监护提供了一种通过对生理参数进行连续监测来研究远地对象生理功能的方法。20世纪70年代,美国研制成功了利用电话线传送心电图的监测系统(TTM)。TTM系统是以微机为基础的心电传输/接收和心电数据库管理系统,通过电话线传输心电信息及计算机处理实现对病人的心电监护。病人应用记录/发射器可随时、随地通过电话线向监测中心传输心电数据,医生根据心电信号改变和患者诉说的病情,向患者提供诊断与治疗意见,为院外心脏病人的长期心电监测和治疗提供了方便。在此后的加多年中,TTM系统发展迅速,而且与之相对应的患者随身携带的监护仪也取得了很大的发展。进入21世纪,医学电子仪器的发展趋势是:1.高精度、高保真、快速实时显示;2.更加多功能、智能化、小型化和网化;3.处理特异性强的诊断与治疗相结合;监测技术向微观、微创、无创、快速、实时、动态性、整合性、可视化方向发展。这些都将大大加快和提高心电信息高速公路速度,使其更加先进、充实、完善、实用,更好提高心血管病的诊断与治疗质量,将心电信息学数据、曲线、图像高保真、快速传送到己开通的心电信息高速公路,并逐步推广到各级医院。目前国内市场上存在一些便携式心电监护仪,但是远远没有得到很好的普及,究其原因,作者认为存在以下几个方面:(1)市场上的产品几乎都是引进国外的技术,对便携式心电监护仪的开发国内尚处于起步阶段,在调研发现只有重庆大学、福州大学等几所大学在研制开发。(2)记录的心电信息极其有限,医生从中难以得到患者全面的心电信息,从而降低了医生对疾病诊断的正确率。(3)费用较为昂贵,动辄几千乃至上万元,一般的患者难以承受;(4)实时性、体积、功耗、重量等都不尽如人意,给患者在使用过程中造成诸多不便。因此,动态心电监护系统的研制有重大深远的意义。1.3本课题方案思路的形成近几年来,随着计算机技术的发展,单片机的性能得到了大大的提高,而单片机具有集成度高、体积小、功能强、功耗低、价格便宜等优点,对单片机的应用可以使仪器实现智能化、小型化等,这就为我们研制新型多功能、便携式心电监护仪提供了良好的条件。因此,采用单片机作为主控制芯片,利用LCD显示器等外围芯片,研制了一种集显示、分析、通信等功能于一身的新型便携式心电监护仪。第二章系统总体设计2.1远程心电监护系统的总体架构医用PDA心电监护软件是整个远程心电监护系统的一个子系统,因此,有必要首先对远程心电监护系统的总体结构做一个介绍[14]。远程心电监护系统的整体拓扑结构如图2.1所示。整个系统分为三个部分:前端移动监护仪、医院监护中心的心电工作站与医用PDA。移动监护仪用于患者病人的数据采集与发送,心电信息的简易处理与显示;医院监控中心心电工作站分为服务器端和客户端:服务器端负责接收患者心电信号数据,对心电信息进行实时监控和报警,与医生PDA通讯;客户端则对用户的心电数据进行数据库管理,对历史心电数据进行回放分析,并向外提供心电的Web访问系统,供医生和用户上网浏览心电数据;医生使用的PDA移动监护设备,具有实时接收患者心电信号数据和接收医院中央服务器数据的功能,并能对信号做一定的分析和处理。图2.1远程心电监护系统拓扑结构图系统工作流程:用户端的移动监护仪单机测量得到患者的心脏电生理信号,通过GPRS/CDMA移动通信网络将监测数据传输到医院监护中心的心电工作站服务器端。心电工作站服务器端接收患者的数据接入请求,对心电数据进行在线监控计算;还应医生请求将相应患者的心电图处理数据发送到医生PDA中。心电工作站客户端负责管理和维护心电信息数据库。相对于医院监护中心的心电工作站服务器端,医用PDA是一个小型的移动心电信息处理平台,PDA也具有信号数据接收和分析处理的功能。它可以根据医生的需要,接收由心电监护中心转发的专属病人实时心电信号,对病人进行远程实时监护;也可从心电信息数据库下载历史心电数据以及其他相关信息,在PDA上做心电图回放分析检测。医生可以据此远程诊断患者的病情,根据情况去患者现场实地就诊。2.2医用PDA心电监护软件的总体设计2.2.1PDA心电监护软件需求分析医用PDA实时监护软件为主治医生所用,它的主要用途在于帮助医生及时地获取其专属病人的心电信息。它为医生提供一个移动的、方便快捷的心电信息处理平台,让经常处于忙碌与移动状态的主治医生可以随时获取病人的心电信息并做出妥当的处理,而不受时间与空间的限制。医用PDA的使用者是具有处方权的主治医生,他们都受过高等教育,具备基本的计算机操作能力,经过一段时间的培训很快就能掌握PDA的操作。但由于医生不具备计算机的专业知识,工作比较繁忙,所以PDA软件要尽量简单易用,方便操作。在对市场进行仔细的调研和分析并与医生的沟通之后,我们提出医用PDA实时监护软件主要需求如下:1、对一个或几个专属病人的心电波形进行实时监护。2、根据医生需求,获取特定病人在特定时间的心电波形并进行回放分析。3、与前端监护仪进行信息交互,如获取紧急报警信息、发送医嘱至专属病人等。4、从服务器端获取专属病人资料,如联系方式、病史等。图2.2PDA心电监护与分析系统用例图2.2.2PDA心电监护软件架构设计医生PDA心电系统总体上来说是一个智能化信号采集处理系统,结构上主要由完成人体电信号采集、滤波放大的前端硬件电路部分和完成数据分析和诊断的微机控制部分构成,这两部分协调配合工作完成整个系统功能。系统框图见图2.3。前端硬件电路部分又可分为电极与导联,放大与滤波电路部分,以及系统电源部分。放大与滤波电路部分负责将心电信号放大、滤除干扰信号等。系统电源部分为系统提供稳定的士SV以及士3V直流电源。完成数据分析和诊断分析的控制部分用8位的单片机。单片机对采集到的数字信号进行压缩以及显示等处理,使整个系统具有智能化特点,而且通过串行接口可以和计算机很好进行通信。图2.3系统硬件框图第三章心电信号检测电路设计3.1引言心脏在机械性的收缩之前,首先产生电激动,产生生物电流,并经组织和体液传导至体表,在身体不同部位产生不同的电位变化,形成体表电位差,即变化着的心电信号。人体的心电信号是一个非常微弱的非正弦的低频信号,其幅值一般在1mV左右,可低至几十微伏,频谱分布在0.05~100Hz,主要频谱分量集中在此0.5~20Hz}。要采集这样的信号,首先必须设计合适的心电信号检测电路。在心电放大器输入回路内,由于电极和皮肤分泌液之间存在着复杂的离子交换过程,在其接触面形成极化电动势Ep1和Ep2,当Ep1≠Ep2时,其差值比心电信号大得多,能达到数百毫伏。差值信号与心电信号一起,由心电放大器放大,势必造成前置放大器静态工作点的偏离,甚至进入截止或饱和,引起心电放大器的阻塞,所以前置放大器的增益不能太大。我们设计的放大器前置放大增益为7倍,后级放大倍数为140倍,总增益1000倍左右。我们设计的心电信号采集电路原理框图如图4-1所示。从电极提取的心电信号经导联传送到前置放大器,进行前置放大,经高通滤波滤除直流信号及低频基线干扰后,由后级放大器放大,再经滤波器进一步滤除50Hz工频干扰,经低通滤波器后得到0.05~100Hz的有用心电信号,由A/D转换后送至单片机处理。同时导联脱落检测电路把检测结果传给单片机,脱落时产生报警。图3-1心电信号采集原理图3.2前置放大器设计3.2.1心电信号的提取传统的心电信号放大电路如图4-2所示:运算放大器Al与A2为同相比例放大器,输入阻抗很高,它对共模信号有很高的抑制比。由于电阻Rg连接于这两个放大器的求和点之间,当一个差分电压加到仪表放大器的输入端时,整个输入电压都呈现在RG两端。由于Rg两端电压等于Vin,所以流过Rg的电流等于Vin/Rg,因此输入信号将通过放大器Al和A2获得增益并得到放大。然而须注意的是对加到放大器输入端的共模电压在RG两端具有相同的电位,从而不会在RG上产生电流。由于没有电流流过RG(也就无电流流过R5和R6),放大器A1和A2将作为单位增益跟随器而工作。因此,当R1=R3,R2=R4,R5=R6时,共模信号将以单位增益通过输入缓冲器,而差分电压将等于:V0=(VM+-VM-)·(1+2·R5/Rg)·(R2/R1)图3-2典型的三运放电路3.2.2前置放大电路为达到心电放大器的上述技术要求,前置放大电路采用了差动输入的方式,如图4-3所示,即将患者体表的电位差作为信号予以放大。3-3前置放大电路1.输入阻抗差动输入电阻就是AD620的差动输入电阻值与R。的并值,可达到18MΩ,因此满足心电放大器的要求。2.低噪声、低漂移仪表放大器AD620的技术指标己满足前置放大器低噪声、低漂移的要求。3.增益通过调节AD620的外接增益电阻Rg的阻值来改变放大器的增益,增益G与电阻Rg的关系按下式计算,G可达到1~1000倍。G=49.4KΩ/Rg+1在前置放大电路图4-3中,增益电阻Rg为R2,R3的串联后再与R1并联的电阻值,R1,R2,R3须选用低温度系数的精密线绕电阻,否则AD620的高性能将下降,我们选用的精度为0.01%的精密线绕电阻。根据低噪声设计理论,影响多级放大器的噪声性能主要是第一级,达到低噪声性能,并选用低噪声器件来构成第一级。但考虑到心电信号中混杂着比其幅度大得多的直流信号,太大的前置级放大器增益会影响电路的直流稳定性,为了保证前置放大器不工作在截止区或饱和区,前置放大器的增益不能过大,因此我们设计了第一级的放大倍数为7倍左右。3.3工频陷波器在生理信号(如心电、脑电、动脉波和心音等)的检测过程中,50Hz工频干扰是经常存在的,但是由于50Hz的干扰信号是落在心电信号的有效频带内,所以在信号通道中增加一级工频陷波器,以尽可能的在50Hz单频上抑制干扰。图3-4陷波电路图在本系统的设计中,我们采用带通滤波抵消法,如图3-4所示。该陷波器具有品质因数高、陷波倍数大、中心频率可调等特点。图3-4中运算放大器U1A.U1B,U2A组成50Hz带通滤波器,运算放大器U2C、电阻R12,R9,R13组成加法运算电路。信号从in进入后一路经过带通滤波器得到50Hz信号,一路经过由U2B,电阻R11构成的反相放大电路得到反相放大信号。两信号再经加法电路,其结果抵消了原信号中的50Hz分量。3.3.1电路元件参数的设计fo=1/2πRC设计要求:fo=50Hz,增益Ho=13取С1=С2=68nF,由fo=1/2πRC算得,R=46.8KΩ,实际取R=47KΩ。因此R1=R3=R4=R5=R7=R10=47KΩ,另取R6=10KΩ,求得R8=100KΩ,调节电位器W来调节R6、R8,从而调节增益和品质因数。实际电路中R5由一固定值R5和一可变电阻组成,以调节中心频率。3.4低通滤波电路由前面可知,心电信号的大部分有用信息在0.05Hz-100Hz之间,所以截比频率取.fo=100Hz。根据巴特沃思二阶低通滤波的特点,本电路采用巴特沃思二阶低通滤波电路,电路如图3-7所示,其各个参数表达式如下:1、传递函数:H(s)·[S2+S/R1С1+S/R1С1+S(1-AuF)/R2С2+1/R1R2С1С2]=AuF/R1R2С1С2图3-7低通滤波电路图增益:AuF=1+R4/R3截止频率:ω0=品质因数:ω0/Q=1/R2С1+1/R1С1+(1-AuF)/R2Сc2系统参数设计如下:1)选取С1值:С1=0.01uF2)根据fo和С1,求K值:K=100/foС1=1003)设定增益AuF=2,查表4-2得:С1=С2=0.01uFR1·=1.126KΩR2·=2.250KΩR3·=R4·=6.752KΩ4)将上述电阻乘以参数K,并取标称值得到:R1=113KΩR2=226KΩR3=R4=680KΩ表3-2二阶低通滤波器(巴特沃思响应)设计表设计表电路元件值增益1246810R11.4221.1260.8240.6170.5210.102R25.3992.2501.5372.0512.4292.742R3开路6.7523.1483.2033.3723.560R406.7529.14416.02223.60232.038Cz0.33CC2C2C2C2C电阻为参数K=1时的阻值。单位为KΩ3.5高通滤波电路高通滤波器电路如图3-9所示。本系统采用巴特沃思二阶高通滤波,截止频率是0.05Hz。1、传递函数:S2/H(s)=S2+S/R1С+S/R2С+1/R1R2С23-9高通滤波器电路图2、参数设计1)选取电容С=1uF2)根据fo和С,求K值:K=100/foС=10003)设定增益Auf=1,查表3-3得:表3-3二阶低通滤波器(巴特沃思响应)设计表压控电压源(VCVS)电路设计表电路元件值增益1246810R11.1251.8212.5923.1413.5933.985R22.2511.3910.9770.8060.7050.636R3开路2.7821.3030.9680.8060.706R402.7823.9104.8385.6406.356电阻为参数K=1时的阻值。单位为KΩR1·=1.125KΩR2·=2.251KΩ4)将上述电阻值乘以K,并取标称值得:R1=1.1MR2=2.2M3.6导联脱落检测电路对于心电监护仪来一说,如果不能及时的检测出导联脱落,就可能作出错误的判断。在本系统中设计的一种简单有效的导联脱落检测电路,该电路是利用LM358的特性,即在单电源供电时,若将LM358接成电压跟随器,当其同相端处于悬空状态时,其输出为稳定的高电平。电路如图4-11所示。4-11导联脱落检测电路设电极地“工”相对于电源地“上”的电压是V,A1,A2偏置电流流过人体产生的电压分别是△V1,△V2,则有:V1=V-△V1V2=V-△V2V3=V2+(V1-V2)/2=V-(△V1+△V2)/2V4=V3=V-(△V1+△V2)/21.当电极与皮肤接触良好时,△Vi=0.V4>V5,于是V。为高电平;2.当电极I<I=1,2,3)脱落时,Ai输出高电平,可以看作△Vi为高电平,于是V4<V5,V。变为低电平;电路中,A5及周围电容、电阻构成低通滤波器,防止50Hz干扰使电路误翻转;二极管D用来产生闽值EoV-E值越小,电路越灵敏。通过改变电位器的值可以改变Vo。第四章单片机数据采集系统4.1引言在单片机的发展过程中,Intel公司扮演了重要角色。它由70年代的MCS―48系列发展到80年代的MCS―51系列,80年代后期的MCS―96/98系列以及今天的MCS960系列及各种CMOS系列高档机,使单片机技术日趋成熟和完善。无论是哪一种位数的单片机,也无论哪一系列的单片机,都为新产品的开发、应用系统的研制、智能控制器的研究等创造了极其有力的硬件环境。可以说,由于世界各生产厂家生产4位、8位、16位、32位通用型单片机以及衍生出的五花八门的系列及型号,使单片机技术的应用已达到了无孔不入的地步。就国内15,16年应用实践而言,单片机使用量最大的是8位单片,应用范围最广的也是8位单片机。本系统选用Atmel公司推出的CMOS工艺低功耗单片机AT89C52为核心,完成数据的采集和各种监控功能,片内EPROM存储监控程序和心电信号的自动分析程序等。并外扩SRAM数据缓存和大容量的Flash存储器存储心电数据。利用RS232接口数据直接传送给PC机。监护仪还带有液晶显示,即可显示中文菜单,配合按键提供友好的人机心电界面,又可显示心电波形,增强监护功能,系统的原理框图如图4-1所示。图4-1系统原理框图4.2数据存储系统本监护仪以200Hz的采样率采集心电数据,要记录长时间的心电数据需要极大的存储容量,且要求存储器要具有掉电不丢失的特点,综合以上因素,对比国内市场上的非易失性存储器,其中SRAM容量较小且价格昂贵。而FlashMemory以其优越的表现进入我们的视线。FlashMemory具有容量大、功耗低、体积小的突出优点,而且其性价比SRAM高得多,因此我们决定选用FlashMemory。目前国内市场供应最大容量的Flash是Intel公司的DA28F640。本系统选用ATMEL公司的AT29LV040。4.2.1数据缓冲数据缓冲器一般应用普通的RAM。RAM具有价格低、应用方便和技术成熟的特点。由于本监护仪需要进行心电波形的实时分析,而闪速存储器的读写次数是有限的,考虑到闪速存储器的寿命问题,因此需要RAM来完成数据的暂存。对心电波形的分析是以8秒为一段的,根据200Hz:采样率和8比特的量化精度,8秒的心电数据需要1600个字节的缓冲器:另外,本监护仪配有LCD显示器,因此需要保存大量的汉字点阵信息;数据的预处理也需要一定的数据缓冲器。因此,综合以上原因,RAM的容量要在6K字节以上,我们选择HM6264作为数据缓冲器,读写时序如图5-2所示。HM6264是28脚,单5V供电,具有编程简单,体积小,接口性能良好的特点。而且它具有两个片选端CS1、CS2,我们把它设计为CS1接地、CS2作为唯一片选,这样,当CS2无效时,HM6264维持状态,功耗降低到正常水平的五分之一。WE接写引脚,低电平有效。OE接读引脚,低电平有效。图4-2HM6264读写时序图4.2.2AT29LV040大容量闪存AT29LV040是一种3V系统供电的闪速可编程可电擦除的8位存储器(PEROM),具有4M位(512KX8)的存储空间,分成2048个分区,每一分区256个字节。该芯片采用ATMEL公司的非易失性的CMOS工艺制造,在使用范围内存取时间为150ns,此时功率消耗仅为54mW。当AT29LV040处于休眠状态时,CMOS的维持电流不超过40uA。AT29LV040的每一分区可擦写超过10,000次。原理框图见图5-3所示,有8位数据线,19位地址线,AT29LV040具有掉电保护功能,用它作为数据存储器可以使数据在意外掉电或关闭电源的情况下得以保存。AT29LV040具有软件数据保护功能,激活软件数据保护功能的方法是用特定三个地址写入一串3个字节数据的编程命令。在激活该功能后,在每个编程周期都必须写入相同的3个字节编程命令序列,否则不会那数据写入。3个字节编程命令序列如下:MOVA,#AAAAH;MOVDPTR,#5555H:MOVX@DPTR,A:MOVA,#55H;MOVDPTR,#2AAAH;MOVX@DPTR,A:MOVA,#AOAOH;MOVDPTR,#5555H:MOVX@DPTR,A:图4-3AT29LV040原理框图4.3液晶显示系统为提供友好的人机界面,增强监护功能,本系统采用了液晶显示器显示菜单和心电信号。首先讨论对液晶显示器的点阵要求。按照普娜。电图的标准记录规格,即走纸速度为20mm/s,振幅增益为10mm/mV。结合本系统200Hz的采样率、5mV的输入电压范围和1000的增益,可以算出20mm/s对应200点/s,所以LCD长轴为10点/mm:LCD的视预宽度为:5mVX1Omm/mV=50mm。根据A/D转换分析,当满幅即输入为10V时,A/D转换输出为十六进制OFFH即255,则5mV经放大后为5V,对应128个点,这样得到:128点/5mV=26点/mV,所以LCD宽轴应为2.6点/mm,即3点/mm。结合本监护仪,考虑到LCD显示器点阵越大体积越大的特点,选择一种点阵较少,体积较小的液晶显示器。选用北京精电蓬远公司的MGLS12864,其是128X64点阵图形显示器,控制器为HD612020。4.3.1硬件连接电路MGLS12864显示器单电源+5V供电,体积为78x70(mm),视预为62x44(mm).点阵为128X64,有两个控制器20个引脚,引脚安排见表4-1。表4-1MGLS12864接口引脚信息脚号名称电平功能1GND0参考地2Vcc+5V电源正极4RSH/L高电平为数据,低电平为指令5R/WH/L高电平从LCD读数据到MPU,低电平写MPU数据到LCD6EH到LLCD使能信号,下降沿有效,读数据时,E为高电平7-14D0-D7H/L数据总线15、16CS1,CS2H片选信号17RSTBL复位信号,低电平有效18Rvout-5V-5V电源输出端19LED++4.2VLCD背光正电源端20LED-0LCD背光负电源端,一般接地4.4RS232串行接口电路AT89C52与PC机进行通信时,由于RS-232C标准规定:-3~-15V表示逻辑"1";+3~+15V表示逻辑“0",这与AT89C52的TTL电平不兼容,因此需要进行电平转换。本系统采用MAXIM公司的MAX232来实现电平转换。该器件工作可靠,外围器件少,所以它已广泛应用于RS232通信标准的收发信号转换。电路图见图4-4。图4-4与PC机的通信电路1.接口信号:完整的RS-232C接口有25根线,采用25芯的插座,而PC机的串行口多数采用简化的9针插座,本文的串口编程只需要采用9针插座。2.数据传输格式:AT89C52和PC机之间进行串行通信时采用异步通信方式。在这种异步通信方式下,数据的发送和接受按照规定的格式进行,如图4-5所示。图4-5数据传输格式第五章PDA-心电信息中心通信模型PDA-心电信息中心之间通信的实现是整个PDA远程心电监护软件非常重要的组成部分,是其他模块的数据来源。PDA与心电信息中心间的数据传输可以选择TCP/IP和UDP/IP两种协议。TCP/IP相比UDP/IP能够为数据传输提供更为安全、可靠和保密的服务,能够保证数据的完整性和有序性。而对于心电数据来说,数据的完整性是非常重要的,心电数据关键片断的丢失将严重影响医生的判断。TCP/IP协议的缺点在于它带来比UDP协议大的系统开销,但经过测试,证明这种开销是可以被接受的。综合以上各种因素考虑,采用了TCP/IP作为数据传输协议。5.1TCP/IP协议PDA-心电信息中心数据网络传输协议作为应用层协议,对其进行设计时了解所采用的底层协议是十分有益且必须的。TCP/IP相比UDP/IP能够为数据传输提供更为安全、可靠和保密的服务:TCP将用户数据打包构成报文段;它发送数据后启动一个定时器,等待对端数据确认;另一端对收到的数据进行确认,对失序的数据重新排序,丢弃重复数据;TCP提供端到端的流量控制,并计算和验证一个强制性的端到端检验和;管理数据包的超时和重传机制。5.2PDA-心电信息中心应用传输协议根据功能设计,通讯模块中需要收发的数据分为四种(除了控制信息有收有发以外,其他均为接收):控制信息、病人病历信息、实时心电数据、历史心电数据。PDA-心电信息中心间的交互较为频繁,交互信息的种类也比较繁多。ECG数据量比较大,当无线网络较为繁忙时难免出现拥塞现象。为了最大程度减少互相影响的程度、保证控制信息的顺利发送与及时接收,我们将控制信息的传输和ECG数据的传输分离开来,分别使用不同的端口:消息传输端口/文件传输端口。历史心电数据、实时心电数据均通过文件传输端口接收。病人病历信息数据量较小,和控制信息一起使用消息传输端口。5.2.1PDA-心电信息中心控制信息传输协议控制信息包报文的格式如图5.2所示:图5.2控制信息包报文格式该数据报文格式分4个字段:消息包头(header):内容为5字节长度的字符串YSMSG,用于识别数据流中的控制信息包。消息类型(type):1字节长度,标识消息正文中的内容,共分15种。医生ID(phy_id):10字节长度,标识该消息发自或者发往的医生身份认证号。消息正文(content):内容和长度根据消息类型而定。5.2.2PDA-心电信息中心心电数据传输协议1)心电数据报文格式确定报文格式的目的在于确定具体的数据内容所代表的逻辑意义。为方便以下的讨论,先明确两个概念:①逻辑包:指的是在应用层提交的数据包,一个完整的逻辑包可以表示一个确切的逻辑意义。比如登录包,它里面就可以含有用户名字段和密码字段。尽管它看上去也是一段缓冲区数据,但这个缓冲区里的各个区间是代表一定的逻辑意义的。②物理包:指的是使用recv(recvfrom)从网络底层接收到的数据包,这样收到的一个数据包,能不能表示一个完整的逻辑意义,要取决于它是通过UDP类的“数据报协议”发的包还是通过TCP类的“流协议”发的包。我们所使用的TCP是流协议,“流协议”与“数据报协议”的不同点在于:“数据报协议”中的一个网络包本身就是一个完整的逻辑包,也就是说,在应用层使用sendto发送了一个逻辑包之后,在接收端通过recvfrom接收到的就是刚才使用sendto发送的那个逻辑包,这个包不会被分开发送,也不会与其它的包放在一起发送。但对于TCP而言,TCP会根据网络状况和neagle算法,或者将一个逻辑包单独发送,或者将一个逻辑包分成若干次发送,或者会将若干个逻辑包合在一起发送出去。(neagle算法可以通过函数setsockopt()取消,但在我们的编程实践中,数据包的大小多在200字节左右,远小于发送缓冲区4096/8192字节左右的大小。这个算法对于减轻网络负担依然是有用的,给与保留。)正因为TCP在逻辑包处理方面的这种粘合性,要求我们在作基于TCP的应用时,一般都要定义自己的包格式,编写相应的拼包、解包代码。通常情况下,表示一个TCP逻辑包的开始和结束有两种方式:①以特殊的开始和结束标志表示,比如FF00表示开始,00FF表示结束;②直接以包长度来表示。比如可以用第一个字节表示包总长度,如果觉得这样的话包比较小,也可以用两个字节表示包长度。本文中同时采用了这两种方式:采用“YSECG”标志包的开始,在报文头部节区中有两个字节来表示包数据节区的长度。我们所定义的心电数据包分为头部节区和数据节区两部分,头部节区共长27Bytes,包含了7个字段,格式如图5.3所示。数据节区为长度为length的心电数据。魔幻数(magicnumber):内容为5Bytes长度的字符串‘YSECG’,用于识别数据流中的心电数据包。病人id:10Bytes长度,标识数据包中ECG数据所属的病人id号。心电数据包类型(type):1Byte长度,用以标识心电数据包是实时监护数据(Y)还是历史心电数据(N)。图5.3心电数据包头部节区报文格式数据节区长度(length):2Bytes长度,说明心电数据包中数据节区的长度,单位为Byte。数据节区长度最大不超过65535Bytes。导联数(nosig):1Bytes长度,可为1、3或者12。数据流水号(serialnumber):4Bytes长度。无论是实时监护还是历史数据下载,第一个心电数据包的流水号编为零,然后依次递增。心电数据由医院心电信息中心打包后发出,PDA心电远程监护软件在数据接收线程中完成心电数据包的接收与解包,流程如图5.4所示。2)数据发送速度数据的发送速率是指心电服务中心通过Internet-CDMA无线数据传输网络发送的数据速率。对于实时监控,我们希望PDA与心电服务中心尽量同步。我们移动终端的数据采集频率为400HZ,AD转换位数8位,每秒钟的数据量为:400×8=3200(bit),因此实时监护时速率为3.2kbps。如果同时监护三位病人,每秒钟需要传输的数据量为9.6kbp。CDMA1X理论带宽可达300kb/s,目前的实际应用带宽大约在100kb/s左右(双向对称传输),是完全可以满足这样的传输要求的。在实际发送时,考虑到PDA的数据处理和数据显示要求,以及TCP/IP包的传输效率,我们每隔500ms发送一次数据,数据量为500ms内的采样数据200Bytes,即每个IP包大小为200多Bytes。如果IP包太小,发送太频繁,PDA的接收也太频繁,会消耗处理器资源;并且,实际数据过小的IP包,加上心电数据头部节区,包的传输效率就会很低。如果IP包过大,接收延迟会比较大。而对于历史心电数据下载,我们希望能够数据在尽量短的时间内下载完,因此,采用的策略是:一旦发现发送socket的发送缓冲区有空余,就用send()函数将其填满。这样可以保证数据发送速度是现有处理器、网络状况可接受的范围内最快的。IP包的大小采用较大的800Bytes,以提高包的传输效率。3)阻塞处理在实际测试过程中,发现在ecg数据的传输过程中,会出现阻塞现象,而且长时间不能恢复。究其原因,一般来说拥塞可由以下原因引起:存储空间不足;传输过程本身的问题;处理器速度能力弱,处理速度慢等。第一种原因可以被排除;而第三种原因,我们在测试中发现,对于一个200个字节的心电数据包,PDA对其进行相关处理大概要耗费22~28ms的时间。而以采样频率为400HZ计,每两个包的发送间隔时间为500ms。因此,这种原因也可以排除;由此我们推测,拥塞是由传输过程本身引起。TCP/IP的超时重传机制保证了较好的安全性与可靠性,但也带来了较大的系统开销。拥塞一旦发生,往往会不断加重,形成一个恶性循环。如果路由器没有空余的缓存,那么它就必须丢弃新到的数据包。当数据包被丢弃时,源端会因超时而重传该包。由于没有得到确认,源端只能保留数据包,结果缓存会进一步消耗,并加重拥塞。如5.1节中所述,TCP/IP协议所采用的一种和式增加积式减少的基于窗口的端到端拥塞控制机制,当网络状况较差时,拥塞窗口持续地指数式减少,而增大很缓慢。在测试中也证明了这一点,当持续一段时间收不到心电数据时,通讯便好像停滞了一般,很长时间都无法恢复。图5.4数据接收线程流程图对于应用层协议来说,TCP/IP的拥塞控制机制是无法修改的(而且它已经被证明是目前的拥塞控制机制中很精巧的一种了)。经过测试和思考,我们制定的应用层的拥塞处理办法(见图5.5):当心电信息中心发现很多次发送数据都失败后(比如说六十次),发信息通知PDA端;PDA端关闭连接socket,切断通讯连接,并通知心电信息中心已经做好重新连接的准备;心电信息中心重新发起连接请求;连接重新建立,继续心电数据的传输。通过这种方法,使得通信过程可以从拥塞避免阶段脱离出来,重新进入慢启动阶段,在这一阶段拥塞窗口是指数增长而不是缓慢的线性增长。这一策略在实际测试中被证明效果良好。图5.5阻塞处理流程图5.3Socket编程实现TCP/IP通信TCP/IP协议的核心部分是传输层协议(TCP、UDP),网络层协议(IP)和物理接口层,这三层通常是在操作系统内核中实现,用户一般不涉及[17]。编程时,编程界面有两种形式:一、由内核心直接提供的系统调用;二、使用以库函数方式提供的各种函数。前者为核内实现,后者为核外实现。用户服务要通过核外的应用程序才能实现,所以要使用套接字(socket)来实现。所谓的Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口。在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket接口后面,让Socket去组织数据,以符合指定的协议。这种模式大大减少了程序设计人员的工作量。Socket与TCP/IP、应用协议层之间的关系如图5.6所示:图5.6TCP/IP协议、Socket、应用程序间的关系Socket有五种不同的类型,其中最常用的是流式套接字(streamsocket)和数据报套接字。流式套接字使用TCP协议,提供了双向、有序的、无重复的以及无记录边界的数据流服务,适合处理大量数据。它是面向联结的,必须建立数据传输链路,同时还必须对传输的数据进行验证,确保数据的准确性。因此,系统开销较大;数据报套接字使用UDP协议,也支持双向的数据流,但不保证传输数据的准确性,但保留了记录边界。由于数据报套接字是无联接的,例如广播时的联接,所以并不保证接收端是否正在侦听。数据报套接字传输效率比较高。在本文中,保证心电数据的完整性非常重要,心电波形关键片段的遗失将会严重影响医生的判断,因此选用了流式套接字(也就是面向连接的套接字)。5.3.1Socket通信流程在TCP/IP网络应用中,通信的两个进程间相互作用的主要模式是客户/服务器模式(Client/Servermodel),服务端侦听客户端的连接请求,一旦客户端发出连接请求,服务程序就为每个客户提供服务,比如创建数据处理线程。Client/Server模式的Socket通信简要流程如图5.7图5.7面向连接的套接字通讯流程图5.3.2Socket通信的多线程实现为了避免阻塞,提高通信性能,socket通信往往通过多个线程来实现。以本文中的心电数据传输为例,PDA端需要每隔一段时间就去侦听是否有连接请求,如果通过主线程中的循环来实现,势必造成主线程的阻塞,因此专门建立一个侦听线程是有必要的(也可以用异步select模式来实现,但WindowsCE并不支持这一模式);每一个连接请求被允许(即一个新的连接被建立时),也必须建立一个新线程来管理这一连接,接收ecg数据包并通知主线程;由主线程来完成对接收到的心电信息的处理,如图5.8。图5.8Socket通讯的多线程实现对于多线程程序设计来说,线程间的同步与异步控制是不可回避的工作,也是成败的关键。线程同步是指线程之间所具有的一种制约关系,一个线程的执行依赖另一个线程的消息,当它没有得到另一个线程的消息时应等待,直到消息到达时才被唤醒;线程互斥是指对于共享的资源在各线程访问时的排它性。当有若干个线程都要使用某一共享资源时,任何时刻最多只允许一个线程去使用,其它要使用该资源的线程必须等待,直到占用资源者释放该资源。在实际程序设计中,要尽量减少线程间共享资源,以减少线程互斥控制的复杂度,同时也减少线程等待资源的时间。基于这一考虑,将ecg数据的实时滤波工作放在主线程中完成,这样放置心电数据的环形缓冲区m_loop_rev_buf、m_loop_ana_buf成为主线程的独享资源,而不需被主线程和数据接收线程分享。结论本文结合实际项目讲述了PDA远程心电监护软件系统的开发过程,从需求分析方案,系统总体和功能模块设计,各种算法的实现都做了较详细的叙述。论文首先介绍了PDA远程心电监护软件系统的功能需求和总体框架,然后介绍了系统的通信模块和通信协议,包括自行设计的应用层PDA-心电信息中心数据网络传输控制协议。接着论文分章讲述了心电信号检测的电路设计和单片机数据的采集。本系统的技术关键或创新之处只要是选用超低功耗8位单片机AT89C52,作为心电监护仪的MCU。该单片机具有功耗低、体积小等特点。外部I/0端口32个。在大容量数据存贮器上,我们选用低功耗大容量的Flash存贮芯片DA28F640,另外,考虑到闪速存储器的寿命问题,因此扩展了一片6264作为数据缓冲器。另外选用了一个12位A/D转换器来完成数据的采集工作。参考文献[1]袁少应.心电图诊断基础知识.天津科学计数出版社.[2]李崇志.心电图自动分析系统国外发展近况.医疗器械.1998,15(4):[3]刘克球.生物医学电子学.北京大学出版社.1994.[4]李智等.24h动态心电记录及分析系统.北京工业大学学报,1996年第22卷第1期.[5]朱翠玲.现代生物医学工程.中国科学技术出版社,1992.[6]周洪建等.心电监护系统的设计.医疗卫生装备,2000年第6期.[7]谢松诚.长时间动态心电图的记录和分析.医疗器械,1992,2.[8]陈康宁.心电图的电话遥测.现代通信,1998.[9]周玉珍.简明心电图手册.北京:人民军医出版社,2002.[10]OPA131GeneralPurposeFET_INPUTOPERATIONALAMPLIFIERS.[11]INA128Precision,LowPowerINSTRUMENTATIONAMOLIFIERS.[12〕康华光.电子技术基础一模拟部分(第四版).高等教育出版社.1998.[13]陈惠开.无源与有源滤波器一理论与应用.人民邮电出版社.1996.[14]张和君.基于GPRS/Internet的远程心电系统的设计与实现:[硕士学位论文].北京:清华大学,2015.[15]郑敬等.一种简单有效的导联脱落检测电路.中国医疗器械杂志,1997年,16卷.[16]陈粤初.单片机应用系统设计与实践.北京航空航天大学出版社,1998.[17]nthonyJones.NetworkProgrammingforMicrosoftWindows.MicrosoftPress,2000.[18]丁玉美.数字信号处理.西安电子科技大学出版社.[19]何立民.MCS-51系列单片机应用系统设计.北京航天航空大学.出版社.[20]郭继鸿.心电图学.北京:人民卫生出版社,2002.致谢本论文是在导师冯老师的悉心指导下完成的。在整个课题的研究和论文撰写过程中,得到了导师的精心指导。冯涛老师渊博的学识和严谨求实的治学态度给我留下了深刻的印象。在此期间,冯涛老师一直以来都担任着繁重的教学任务,还要对我的毕业设计操劳,给予我多方面的帮助,在论文的撰写过程中,正是
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年西瓜买卖详细协议模板
- 2024年预付款垫资协议格式草案
- 地质勘查工作协议2024
- 二手房交易北京协议样式2024年
- 2024年精装地暖施工协议范本
- 2024年国内集装箱运输协议样本
- 2024商业地产续租协议范本
- 2024年度农产品专项采购协议样本
- 2024年学校周边商业租赁协议样本
- 2024年借款居间服务协议模板2
- 2024至2030年成都市酒店市场前景调查及投资研究报告
- 2024-2030年中国氦液化系统市场深度调查与未来发展前景预测研究报告
- 2024年历年中级经济师工商管理考试真题及答案
- 2024秋国家开放大学《管理英语1》形考任务1-8参考答案
- 网络安全教育主题班会(完整版)
- ISO∕IEC 27014-2020 信息安全、网络安全与隐私保护-信息安全治理(中文版-雷泽佳译2024)
- 2024广州市中小学新教师专业发展指标体系框架
- 关注实习护士生心理健康课件
- 2024年东南亚心血管介入器械市场深度研究及预测报告
- 《我的家乡南京》课件
- 挂名法人免责协议书
评论
0/150
提交评论