1、五邑大学本科毕业设计(论文) 注意本栏字体为“隶书”摘 要(摘要需按照“目的、方法、结果结论”四要素来写)静脉输液是有效治疗疾病的常规护理方法之一,医院在对病人进行输液治疗时,需要根据输液的药物和患者的病情选择合适的输液滴流速度和输液量。为了解决目前普遍采用人工方式监测输液状况的问题,设计了基于光电检测技术与无线通信技术的监测系统,系统利用非接触式检测技术实现对液滴与液面信息的检测,有效的实现了对输液状况的监控。当出现报警信息时系统能及时、准确地实现报警;同时可通过主机的终端界面实时了解当前报警信息,并对从机的相关数据进行远程控制。系统的实现有效的减轻了医疗工作人员的工作强度,减少医疗差错,使
2、医护人员有更多时间去关注医疗工作,将更多的时间留给患者,而且能与医院现有的信息系统实现兼容,充分体现了医院的信息化与人性化。关键词: 非接触式检测技术; 静脉输液; 远程控制; 实时监控 AbstractIntravenous infusion is one of the effective methods of treating diseases of conventional care,according to the drug of infusion and patients condition,taking an appropriate infusion flow rate and f
3、luid volume drops is necessary when patient being in the infusion treatment. In order to solve the common problem of monitoring infusion condition in the artificial way, a monitoring system based on electro-optical examination technology and wireless communication technology is designed, the system
4、which uses the non-contact detection technology to achieve information on the droplet and surface detection can achieve the condition monitoring of infusion effectively. When the warning message appears, the system can realize promptly and accurately; Futhermore, with the terminal interface of compu
5、ter, information of current infusion can be achieved, and taking remote control of slaves is available. With the system, intensity of health care personnels and medical errors can be reduced effectively, so that health care personnels could have more time to pay attention to their medical work and p
6、atient will be more time left. Besides, the system can be compatible with the existing information system of hospital, and hospitals informationization and humanization being fully displayed.Key words: Non-contact detection technology; Intravenous infusion; Remote control; Real-time monitoring目 录摘 要
7、IAbstractII第1章 绪 论11.1 系统的研究背景11.2 国内外现状及发展状态11.3 系统的研究意义21.4 本章小结2第2章 系统总体设计32.1 系统概述32.2 系统结构32.3 系统主体方案设计32.3.1 液滴信号采集方案32.3.2 液滴信号处理方案42.3.3 液面信号采集方案42.3.4 数据显示方案52.3.5 数据输入方案52.3.6 串行通信方案52.4 系统设计原则52.5本章小结6第3章 系统硬件设计73.1 系统硬件设计原则73.2 系统硬件电路设计73.2.1 液滴检测电路设计73.2.2 液面检测电路设计83.2.3 按键电路设计103.2.4 数
8、据显示电路设计103.2.5 串行通信电路设计123.2.6 声光报警电路设计123.2.7 有线报警电路设计133.2.8 系统控制电路设计143.2.9 电源电路设计143.3 PCB设计153.3.1 PCB设计原则153.3.2 系统PCB设计163.4本章小结16第4章 系统软件设计174.1 系统软件设计概述174.2 系统软件设计的组成174.2.1 系统主控制程序模块174.2.2 初始化程序模块184.2.3 液滴检测程序模块194.2.4 输液监控程序模块214.2.5 按键功能设定程序模块214.2.6 数据显示程序模块224.2.7 数据存取程序模块234.2.8 无线
9、收发程序模块244.3 本章小结25第5章 系统测试265.1 电源模块测试265.2 液滴与液面检测模块测试265.3 数据存取模块测试275.4 无线收发模块测试275.5 其他模块测试275.6 本章小结27结 论28参考文献29致 谢30附 录3133第1章 绪 论1.1 系统的研究背景随着现代医学技术的发展,尤其是电子技术、计算机技术与数字信号处理技术的不断发展,监控仪作为医院实现临床医疗监控的设备得到了广泛的应用,并逐渐成为各级各类现代化医院中临床监测监护中必不可少的一种医疗设备。现代医学监护仪的监测参数反映了监护过程中监护病人的生理体征,医学信号信息的变换、提取及处理分析是其成功
10、实现的关键。随着产品的日异更新和发展以及用户需求逐渐趋于多样性,实现系统轻型化、无线化、一体化、综合化成为了监控仪的发展趋势。同时,随着网络通讯技术的发展,监护仪向网络化、远程化方面发展将成为必然。系统通过网络系统和接口,使医生能实时读取相关临床信息和远程监控,实现真正的临床信息整合。这不仅有效的减轻了医护人员的医疗压力,节省医疗费用,还可以使病人及其家属获得解放,对病人的心理健康和身体健康均有特殊的好处。由此可见,现代医学监护仪的发展前景将十分广阔。1.2 国内外现状及发展状态国外对静脉输液监控装置的研制较早1,如日本、美国和德国等国家上世纪80年代末就进行了这方面的研制,现在市场上流行的大
11、多是国外产品,类型多样,性能较好,如日本JMS株式会社的OT-601型输液泵(控制精度为10%),美国IMED公司Gemini PC-2TX 型输液器,还有德国贝朗(B|BRAUN)公司的Multifuse型、Perfusor Compact型(控制精度可达到2%),以色列也有相应的产品,型号众多,性能较好。但是这些产品在国内只有一些大型医院引进,因其价格昂贵,主要用于危重病人。 国内对输液装置的研制起步较晚,大多在90年代中期开始研究,市场上也有一些国产静脉输液控制装置,如北京科力丰的ZNB系列产品。不过总体来说,种类较少,拥有自主知识产权的较少,关键技术研发能力有待提高。由于精确输液只对少
12、数特殊病人和特殊药品才具有实际意义,而且规范操作下,输液阻塞、气泡混入是可以避免的。因此在输液过程中,根据近期对国家知识产权局专利信息的查询,目前已有多种输液完成报警器专利技术,但由于各专利技术或多或少都存在着这样或那样的缺陷,诸如安全性、可靠性、成本及操作方便程度等问题,致使真正转化为产品的专利并不多。其临床应用推广情况大多不太理想,其原因可能就与客户对这些技术或产品本身的安全性、可靠性、操作的方便与否以及价格等因素的认可有关。作为一种医疗器械,安全性、可靠性是基础,作为一种只有普及到每一位输液病人才有实际意义的产品,使用方便和足够低的价格又是一种基本要求,所以,这种产品即便安全性、可靠性得
13、到了充分保证,但如果没有简便的操作和足够低的价格作支撑,要想顺利推广是不可能的。1.3 系统的研究意义在医院信息化建设越来越完善,应用越来越广泛的情况下,此类密切配合临床的辅助系统的应用不仅能与医院现有信息系统实现兼容,而且有效的减轻了医疗工作人员的工作强度,提高护理质量; 。1.4 本章小结本章概述了系统的研究背景、发展状态及其研究意义,一方面说明了作为将普及到每一位输液病人的产品,系统要在实现安全、可靠的基础上满足成本低及操作方便等要求;同时说明了系统的实现对医疗双方带来的实际帮助,有效的减轻了医疗双方的压力,让病人从医疗护理中彻底解放出来,实现医护管理的信息化与人性化。第2章 系统总体设
14、计2.1 系统概述本系统采用非接触式检测技术实现对静脉输液滴数与液面信息的采集,通过相关算法对输液信息进行处理,当系统的输液状况出现异常时,系统启动声光报警,并通过串口通信模块把报警信息发送到主机进行报警。在本系统中,从站既可与主站通过串行通信构成监护网,也可单独完成对输液速度和输液液面的监测、系统异常报警以及对相关数据的设置和保存操作。通过主机的终端界面可及时了解当前报警信息,同时可通过对从机发送控制指令实现系统的远程控制。系统的液面检测与液滴检测模块是研究关键点,液面检测与液滴速度检测的信号直接影响到外电路的设计和单片机的软件设计。2.2 系统结构根据对系统功能需求的分析,本系统由液滴检测
15、模块、液面检测模块、数据显示模块、按键模块、声光报警模块、电源模块和串行通讯模块等部分组成。系统结构框图如图2-1所示。图2-1 系统结构框图2.3 系统主体方案设计作为监控病人静脉输液状况的产品,系统性能的好坏将直接影响到病人的生命安全,因此系统设计过程中需要进行系统方案的层层论证,以便实现系统性能的最优化。2.3.1 液滴信号采集方案方案一:采用电容式传感器进行液滴测量。在茂菲氏管外围放置一对电极,形成一个电容。当液滴滴下时电容量发生变化,可通过LC振荡电路来测量这个电容的变化。当输出的频率值发生变化时,说明有液滴通过,可以达到检测液滴的目的。方案二:利用光的反射原理进行液滴测量。采用红外
16、发光二极管与光敏三极管的组合,将红外发光二极管和光敏三极管垂直置于茂菲氏管的一端检测。方案三:利用光的透射原理进行液滴测量。采用红外激光管与光敏三极管的组合,将红外激光管和光敏三极管分别强弱实现对液滴的检测。综合上述方案,方案一对于单一药液测量精确度高,但对于不同的药液时,由于电解质不同,电容变化可能不同,而且外围电路也较为复杂;方案二中由于检测的液滴呈椭圆状,液滴经过时光敏三极管能接收到反射光信号比较微弱,信号检测的难度较大,同时其抗干扰能力较弱,当滴管发生抖动时,容易产生错误检测;方案三中由于液滴经过时发生的散射和折射作用对光信号影响较大,因此能实现对液滴的有效检测,同时发射光的穿透力较强
17、、灵敏度高,能适应潮湿天气下的正常工作,能有效的实现对外界环境的抗干扰;另外,由于采用的是能发出23mm短线的红外光的激光管,此方案能实现系统在一定抖动下的正常检测。因此选用方案三作为液滴检测的方案。2.3.2 液滴信号处理方案方案一:利用液滴经过时引起光敏三极管信号输出端的电压信号的相应变化,通过电压比较器,将光敏三极管信号输出端的电压信号与一基准电压作比较,通过检测液滴经过时电压比较器对应信号输出端信号的变化实现对液滴信号的处理。方案二:将光敏三极管信号输出端的电压信号经过滤波部分、信号放大部分后,经过电压比较器与一基准电压作比较,由于液滴经过时引起光敏三极管信号输出端的信号变化相当于脉冲
18、信号,因此通过对脉冲信号的处理可实现对液滴信号的处理。综合上述方案,方案一的电路简单,能实现对液滴信号的处理,但电路稳定性较差、抗干扰能力弱,且容易受温度影响而导致检测出错;方案二中由于电路只对脉冲信号进行处理,因此电路抗干扰能力较强、稳定性高,能实现对液滴信号的有效处理。因此选择方案二作为液滴信号处理的方案。2.3.3 液面信号采集方案方案一:采用电容液位传感器进行液面检测。将液位传感器垂直置于茂菲氏管外侧,通过检测液位变化引起相关量的变化来实现液面的检测2。方案二:采用超声回波检测技术,利用超声波在不同物质、不同密度内传播速度不同的原理,通过检测超声波发射后的回波时间的变化实现对液面的检测
19、。方案三:利用光电检测的原理进行液面检测。采用红外对管的组合,把红外发射管和接收管分别正对着垂直置于茂菲氏管的两液面的检测。综合上述方案,方案一能有效的实现对液面的检测,但器件成本较高,外围电路也较为复杂;方案二中由于超声波探测同时成本低、电路简单,且受可见光影响小,稳定性好。因此选择方案三作为液面检测方案。2.3.4 数据显示方案方案一:采用液晶显示模块进行数据显示。方案二:采用数码管进行数据显示。综合上述方案,由于系统只需要进行相关数据及参数的显示,采用液晶显示模块成本较高,而且不利于系统的轻型化设计,因此选择方案二为数据显示方案。2.3.5 数据输入方案方案一:采用矩阵式键盘进行数据输入
20、。方案二:采用独立式按键电路进行数据输入。综合上述方案,方案一中当电路需要较多按键进行数据输入时,可有效降低占用单片机的I/O口数目,但软件控制较为复杂;方案二中每个按键单独占有一根I/O接口线,每I/O口之间的工作状态互不影响,电路设计较为简单,软件控制容易。由于系统资源有限,I/O口的使用较为紧张,因此选择方案一作为数据输入方案。 2.3.6 串行通信方案方案一:采用无线模块 据的无线传输方案二:采用无线模块 无线传输综合上述方案,两者均可通过单片机对其的控制实现与主机之间的数据传输。方案一的NRF2401模块的方式设置比较麻烦,易出错。同时,其传输距离较近,抗干扰性能比较差,容易产生误码
21、;方案二的STR-30模块采用GFSK的调频方式,具有极高的抗干扰能力,进行智能数据控制时无需编制多余的程序,同时其数据传输速率高、可靠性高、故障率低、性价比高。因此选择方案二作为串行通信方案。2.4 系统设计原则为了满足系统实现高性能与高性价比的要求,系统设计需遵循以下原则:(1)采用低功耗硬件电路设计及微控制器芯片,为输液监控提供平台支持,并能根据需要对系统进行功能扩展。(2)信号采集部分尽量采用中断方式进行信号处理,有利于提高系统信号处理的效率与稳定性。(3)系统要具有良好的人机交互界面,方便医护人员的操作。(4)由于系统的使用环境的特殊性,系统要求具有很高的稳定性与可靠性,因此系统设计
22、时要尽量提高系统的抗干扰能力。(5)尽量实现系统的轻型化,采用高性价比的系统方案。2.5本章小结本章对系统做了简单的介绍,介绍了系统的功能、结构,并对系统主体方案的设计进行了探讨与选择。 第3章 系统硬件设计3.1 系统硬件设计原则作为针对监控病人生理体征的产品,为使系统得以更好地推广,系统硬件设计应遵循以下原则:安全可靠、足够的抗干扰能力、经济合理、易用性。3.2 系统硬件电路设计3.2.1 液滴检测电路设计液滴检测电路是系统设计的重要部分,能否准确地检测液滴是计算已输液体体积、剩余体积、输液速度等参数的关键,也是系统性能与可靠性的主要参考标准。本系统采用光电检测技术实现对液滴的测量3。如图
23、3-1所示液滴检测示意图中,红外激光管发射的光线透过茂菲氏管投射到光敏三极管的感光面上,在没有液滴滴落时,光敏三极管接收到的光照度最大,产生的光生电流也最大,此时光敏三极管信号输出端电压为低电平;当有液输出端电压信号的变化可实现对液滴的检测。图3-1 液滴检测示意图本系统液滴检测电路如图3-2所示,电路中点解电容C1起到隔直通交的作用,当系统中没有液滴经过时,光敏三极管信号输出端输出恒为高电平的直流信号,由于电容C1对直流信号的阻隔作用,导致运算放大器的正输入端没有信号输入,经过电压比较器进行电压比较后,此时OUT1端输出恒为+5V的电平信号;当有液滴经过时,光敏三极管信号输出端输出低电平的直
24、流信号,由于液滴经过的过程中信号输出端信号的变化相当于脉冲信号的产生,电容C1对交流信号的导通作用使得此脉冲信号能安全的进入运算放大器U1进行高增益、低噪声放大,此时放大器输出端输出信号的信号已足够强。U2为电压比较器,其负输入端由电可实现对液滴信号的准确检测。图3-2 系统液滴检测电路图本电路中,为了提高系统液滴检测的灵敏度,务必尽量使光敏三极管信号输出端电压信号的变化达到最大化,即达到最大,电路中R2应选用阻值为5.1K的电阻;通过检测知道,液滴经过时输入到运算放大器正输入端的为电平1.1V左右的脉冲信号,为了使放大器工作在线性放大区域,同时可使放大器输入端接收到的微弱信号得到足够的放大,
25、电路中R4和R6应选用阻值分别为30K、100K的电阻,此时电路中信号放大部分的放大倍数为倍;由于电容C1和C2涉及到电路的隔直通交性能,电容性能的好坏直接影响电路检测的稳定性与可靠性,因此应使用漏电压较少、寿命长、稳定性高的电容,本电路中电容C1、C2分别选用容值为100和22的钽电容。同时系统可通过提高电压比较器的基准电压来增强其抗干扰能力,电路中R9为100K,R8为15K,它们构成的基准电压为。同时,为了提高模块的抗干扰能力,系统采用黑色遮蔽体将光敏三极管包住,有效的减少了外围可见光对液滴检测的影响。3.2.2 液面检测电路设计本系统采用红外检测技术对液面进行检测4,7。如图3-3所示
26、,红外发光二极管发出红外光,光线透过液体与茂菲氏管照射到红外接收管的感光面上,接收管将接收到的光信号转换成电流输出。管后,如图3-3(c)所示,光线又可直通照射光敏接收管,接收管恢复导通状态,此时接收管信号输出端电压为低电平6。因此,通过检测接收管信号输出端电压信号的变化可实现对系统液面的检测。图3-3 液面检测示意图本系统液面检测电路如图3-4所示,电路中红外接收管的信号输出端连接到电压比较器U2的反相输入端,电阻R10、R11为电压比较器的正相输入端提供参考电压,本系统选取系统液面高于接收管时对应的输出电压为系统参考电压值。由于接收管信号输出端接收的信号在临近液面时会有明显的变化,因此通过
27、对电压比较器两输入端电压进行比较,利用单片机对电压比较器对应信号输出端信号的检测可实现对系统液面的有效监测。图3-4 系统液面检测电路图本电路中,可通过尽量使接收管信号输出端电压信号的变化达到最大来提高系统液面检测的灵敏度,即使参数达到最大,电路中R13应选用阻值为200的电阻;同时系统可通过提高电压比较器的参考电压值来增强其抗干扰能力,电路中R10为100k,R11为15k,它们构成的参考电压为。3.2.3 按键电路设计系统中按键模块是实现数据输入与参数修改的设备,借助键盘可向系统设置参数,发出控制指令等。当所设置的功能键电路中矩阵键盘的高四位均接上拉电阻,其阻值为10 k。图3-5 系统按
28、键电路图3.2.4 数据显示电路设计在系统中,数据显示模块是实现人机交互的界面,通过数据显示模块可显示系统的相关参数及报警信息。考虑到部分数据取值较大,本系统采用2个4位数码管进行数据的显示;同时由于系统I/O端口较为紧张,为了实现对数码管的有效控制,系统采用串行控制芯片74HC595进行相关数据的处理,系统的数据显示电路如图3-6所示。图3-6 系统数据显示电路图在本数据显示电路中,芯片74HC595是8位串行输入/输出或并行输出移位寄存器,具有三态输出功能寄存器有一个串行移位输入(Ds),和一个串行输出(Q7),和一个异步的低电平复位,存储寄存器有一个并行8位的,具备三态的总线输出,当时能
29、OE为低电平时,存储寄存器的数据输出到总线。芯片工作时序图如图3-7所示7。图3-7 74HC595工作时序图为了避免电路中导通电流过高而烧坏数码管,本电路中需要选择合适的限流电阻。由于数码管内部是由发光二极管构成的,其正常工作电流范围为520 mA,以及其正向压降为2V左右。为了适当控制数码管的发光亮度,电路中限流电阻R18R25应选用阻值为330的电阻,此时数码管的驱动电流,其中其中为二极管正常工作时的正向压降。同时,为了实现对数码管的有效选通,电路中与三极管连接的串联电阻应选用稍大的阻值,本电路中R36R39选用阻值为4.7k的电阻。3.2.5 串行通信电路设计由于传统的RS485通信需
30、要布线,安装维护工作较为困难、复杂,并且易受到现场条件的影响10 ,11,为了满足用户需求,本系统采用何标准或非标准的用户协议,只需通过与单片机引脚直接连接即可对其进行相关的控制操作。STR-30的引脚功能说明如表3-1所示。表3-1 STR-30模块引脚说明表 Pin 引脚名称 功能 说明 1 GND 电源地 接电源地 2 VDD 电源输入 +2.7-5.5VDC 3 RxD/TTL 串行数据接收端 TTL(TxD) 4 TxD/TTL 串行数据发射端 TTL(RxD) 5 SGND 信号地 6 A(TxD) RS-232的TxD 7 B(RxD) RS-232的RxD 8 SLEEP 休眠
31、控制 (输入)TTL 休眠信号 低有效t 15ms 9 RESET 休眠唤醒 (输出)TTL 唤醒信号 负脉冲唤醒3.2.6 声光报警电路设计报警电路作为系统的一个重要组成部分,用于当系统中出现相关报警信息时实现声光报警,以便提醒医护人员注意当前病人输液情况以及执行相关操作。系统中声光报警电路如图3-8所示。电路中选用统选用了阻值为2K的电阻作为报警灯的限流电阻,此时电路中电流,其中为发光二激光正常工作时的正向压降,R为电路中的串联电阻。图3-8 系统声光报警电路图3.2.7 有线报警电路设计 为了充分地利用医院现有的床头呼叫系统,系统通过对继电器的闭合控制可实现系统的有线报警。系统有线报警电
32、路如图3-9所示。图3-9 系统有限报警电路图在本有线报警电路中,三极管Q12起到相当于开关的作用,当JD端输入高电平信号时,三极管处于导通状态;当JD端输入低电平信号时,三极管工作于截止状态,通过对三极管工作状态的选择可实现对继电器的开闭控制,即实现了对医院床头呼叫系统的开闭控制。由于电路中继电器的线圈属于电感性负载,当三极管截止时,其集电极电流,而原本线圈上的电流不可能瞬间管的保护8。同时,为了实现对三极管的有效选通,电路中与三极管基极相连接的电阻应选用稍大的阻值,本电路中R31选用阻值为4.7k的电阻。3.2.8 系统控制电路设计为了实现系统对各功能模块的有效控制,本系统选用功能齐全、内
33、部资源丰富的芯片STC89C52作为系统的控制芯片12。其是一种低功耗、高性能的8位微控制器,内部含有3个16位定时器/计数器和8个中断源,充分地满足了系统的软件设计需求;同时芯片内部集成2K字节的EEPROM单元,可断电保存大量数据。利用该芯片可组成一个高性能、低功耗、高稳定性的控制系统9。系统控制电路如图3-10所示。图3-10 系统控制电路图3.2.9 电源电路设计电源电路是系统的重要组成部分,主要是为各功能模块提供所需的工作电压,其稳压性能直接影响到系统工作的稳定性与可靠性。在本系统中,系统提供外部电源与备用电源两种供电模式,通过二极管的选择能够实现二者之间快速的自动切换。由于系统只需
34、要单一的+5V电源,因此选用LM2940芯片提供+5V的稳压输出,系统电源设计电路如图3-11所示。其中J7、J9分别为外部电源接口与开关接口;DL4为发光二极管,可指示电源的工作状态。图3-11 系统电源电路图为了使系统的电源部分工作稳定、可靠,电路中稳压芯片U6的输入端与输出端分别并接上容值为100和47的滤波电容C10、C11。同时, 为电路的电源电源,为发光二极管正常工作时的正向压降,R为电路中串联电阻的阻值。3.3 PCB设计3.3.1 PCB设计原则(1) 通常条件下,所有元件应布置在印制电路板的同一面上,只有在顶层元件过密时,才能将一些高度有限并且发热量小的器件放在底层。(2)
35、在保证电气性能的前提下,元件在板面上应分布均匀、疏密一致元件,输入和输出元件间尽量远离。(3) 元器件或导线之间可能存在较高的电位差的应加大相互间距离,以免因放电、击穿而引起意外短路。(4) 位于板边缘的元件离PCB板边缘保持一定的安全距离。(5) 电路中应尽量安装信号流程安排各功能模块的位置,同时应围绕模块的核心元件进行电路布局。(6) 元件布局应便于信号流通,使信号尽可能保持一致的方向。3.3.2 系统PCB设计本系统采用双面走线方式的进行系统PCB设计,依据电路的功能单元和信号流程,系统采用模块化的方式实现系统的元件布局,力求布局便于信号流通,并使信号尽可能保持一致,系统设计分布图如图3
36、-12所示。图3-12 系统设计分布图在系统PCB设计中,系统合理区分强弱电流区,在保证电路性能的前提下力求合理走线,以求降低电路的布线电阻。 入电源的原则。同时系统采用大面积覆地以求降低系统的布线阻抗和提高系统的电磁屏蔽能力。 3.4本章小结本章主要分析了系统的硬件电路设计,介绍了系统各主要功能模块的电路原理与功能,以及系统的PCB设计问题,为整个系统的实现提供了重要的保证。第4章 系统软件设计4.1 系统软件设计概述软件设计是系统的重要组成部分,其性能直接影响到系统性能的发挥。本系统采用模块化和结构化的设计方法,将各个功能模块设计为独立的程序模块,通过主程序的对各模块的调用,实现系统的相关
37、功能。本系统软件设计模块包括主控制程序模块、初始化模块、液滴检测模块、按键功能设定模块、数据显示模块、数据存取模块和无线收发模块等。系统软件设计结构图如图4-1所示。图4-1 系统软件设计结构图4.2 系统软件设计的组成4.2.1 系统主控制程序模块主程序是系统软件设计的主要组成部分,通过对其他功能程序模块的调用可实现系统的各项功能。当系统接上电源后,主程序首先进入初始化部分进行相关参数的初始化,然后进入系统的参数设置部分,此时程收到彻底退出指令后,主程序返回到初始化部分并等待系统相关的操作。系统主程序流程图如图4-2所示。图4-2 系统主程序流程图4.2.2 初始化程序模块对系统的初始化将直
38、接关系到单片机内部资源的有效利用和系统的正常运行。系统初始化程序模块的主要功能是完成对单片机和各个外围模块的初始化,包括单片机I/0端口初始化、定时器初始化、中断初始化、串行口初始化以及系统参数和相关变量的初始化设置等。系统初始化程序部分如下:void initial(void) KEYPORT = 0xf0; /按键控制位初始设置 SLEEP=0; /STR-30睡眠脚,高电平有效15ms RESET=1; /STR-30复位脚,低电平有效10ms TMOD|=0x20; / 定时器1方式2 SCON=0x50; TH1=0xfd;TL1=0xfd; / (f=(2SMOD*11.0592*
39、106)/32*12*(256-TH1)串口设置) RCAP2H=0xca; /定时器2 ,参数初始化 RCAP2L=0x00; /晶振频率为11.0592M,定时时长为15ms IT0=1; TR1=1; EA=1; ES=1;4.2.3 液滴检测程序模块由于系统工作过程中难以避免出现相关的干扰信号,而且经测量得知相邻液滴之间的时间间隔恒大于150ms,如图4-3所示。图4-3 系统液滴信号波形图检测液滴信号是系统软件设计的主要任务,液滴信号检测的准确性与可靠性将直接影响系统的性能。为了使系统能稳定、可靠地工作,系统采用外部中断方式进行液滴信号的捕捉,同时结合定时器进行液滴信息的处理。在系统
40、中,首先利用定时器2定时15ms,并通过内置计数器进行时间的ps_flag置1,并且在干扰标志interference_flag为0的情况下,将相邻液滴之间的时间间隔值赋给时间参数10。系统液滴检测程序流程图如图4-4所示。图4-4 液滴检测程序流程图系统液滴检测程序如下:void Int0(void) interrupt 0 /外部中断0子程序 EX0 = 0; if(Timer2_Server_Count THATTIME) /超出某个T1时间,马上重新开始 RCAP2H = 0xca; RCAP2L = 0x00; /一个周期15ms temp_timerCount = Timer2_S
41、erver_Count;/保存触发之间的时间差. Timer2_Server_Count = 0; /重新开始计时 period_temp_drops = 1;trigger_flag = 1; elseperiod_temp_drops+;/在时间T1信号个数(脉冲个数) EX0 = 1;void T2_2S(void) interrupt 5 /定时器2中断子程序 TF2=0; / T2定时器发生溢出中断时,需要清除溢出标记 Timer2_Server_Count+; if(Timer2_Server_Count = THATTIME) if(period_temp_drops =1) /
42、时间到,如果在这个时间内,period_temp_drop=1 temp_drops+; 说明有液滴经过, temp_drops加1 if(interference_flag = 0)/在这滴到达之前没有干扰,保存速度,否则不保存 temp_speed = temp_timerCount; drops_flag = 1;interference_flag = 0; else interference_flag = 1; period_temp_drops = 0;4.2.4 输液监控程序模块系统通过调用输液监控程序模块实现对病人输液状况的监控。本程序模块中,输液状况的监控包括对输液速度、输液体
43、积、剩余输液体积、输液液面等输液参数的监控。当系统检测预警信号时,程序会进行系统的预警处理,并通过无线通信模块向计算机发送预警信息,以提示医护人员执行相关的操作;当系统检测到报警信号时,程序会对报警类型进行判断与确认,然后进行相应的报警处理。其中,本程序模块工作流程图如图4-5所示。图4-5 系统输液监控程序流程图4.2.5 按键功能设定程序模块系统通过按键功能设定模块进行系统参数的设置以及相关功能的操作。为了实现对按键操作的有效响应,程序利用线反转法的方式对按键操作进行处理。当按键按下后,程序立刻进行响; if(keycounter = KEYREPEATTIMES)/keycounter周
44、期性变化 keycounter = KEYINITIAL; if(keycounter=KEYINITIAL)/每当二者相等时,就返回一个键值 keyvalue = keyvaluetemp; samecounter+; *sametimes = samecounter; 在本功能设定程序模块中,程序通过设置菜单项的形式可进行系统参数的设置与相关功能的操作。在按键菜单中,09为数字键,同时数字键键16分别代表体积为50ml、100ml、150ml、200ml、250ml、500ml的输液体积参数,其他按键功能说明如表4-1所示。表4-1 按键功能说明表 键值 功能说明 a 菜单进入/当前子菜单修改 b 子菜单选择加 c 子菜单选择减 d 复位键 e