基于单片机的医用点滴余液液位监测报警系统课程设计论文正文终稿.docx
《基于单片机的医用点滴余液液位监测报警系统课程设计论文正文终稿.docx》由会员分享,可在线阅读,更多相关《基于单片机的医用点滴余液液位监测报警系统课程设计论文正文终稿.docx(15页珍藏版)》请在冰豆网上搜索。
基于单片机的医用点滴余液液位监测报警系统课程设计论文正文终稿
目录
1前言1
2总体方案设计2
2.1方案论证2
2.2方案选择3
3单元模块设计4
3.1监测模块4
3.2单片机模块4
3.3LED信息显示模块6
3.4控制输入模块7
3.5报警模块7
4软件设计9
5系统调试10
6结论11
7总结和体会12
8参考文献13
附录1:
附图14
1.1原理图14
1.2电路PCB板图15
1.3软件代码16
附录2:
相关设计软件18
1前言
随着社会的发展,随着科技的进步。
运来越多的地方需要用到一些高科技设备来为人们服务。
目前医院普遍使用的是人工监控点滴输液装置器,将液体容器挂在一定高度,利用势差将液体输入病人体内,用软管夹对软管夹紧和放松控制滴速,药物的有无将威胁病人的生命安全,为此医护人员要不定时的观察药物的情况,本设计根据需要设定液位控制高度,同时具备报警、高度显示等功能,使用了红外对射传感器,使其具有与液面不接触的特点,可用于有毒、腐蚀性液体液位的控制,简单、方便、安全、具有较高的使用价值。
如何使这种手工操作走向自动化或半自动化,让护理人员监控病人打点滴的进程时间得到充分利用,这就要求医疗器械加速自动化与半自动化进程,提高医护质量。
本文介绍了一种操作方便、显示直观、可集中控制、具有报警功能的智能型液体点滴速度监控系统。
该系统可让医护人员在控制室监控不同受液者的输液状况,也可以直接到输液室直接改变输液状态,了解病人的输液进程,及时通知处理将快完成的输液。
2总体方案设计
本次设计思想主要是想借助单片机,对医疗点滴输液加以半自动化的控制。
首先通过液位传感器检测信号,然后将检测到的信号送给单片机进行处理,通过数码管和报警装置,将床位信息显示在监控室,然后由护理人员对具体情况进行处理。
2.1方案论证
设计中采用了两个方案,具体的方案见方案一和方案二。
方案一:
如图2.1所示系统上电工作后,用户首先通过键盘设定温度的初值,单片机系统将用户设置的“警戒值”保存地址空间中。
安装于被监测对象上的超声液位传感器,将实时监测数据经A/D转换,送入单片机连接I/O口。
单片机进入主程序后,开始以查询的方式检测转换的数据,并将相应的数值通过数码管显示输出。
当检测的液位小于设置的初值时,单片机将控制报警系统响起,以提醒医护人员。
图2.1液位监测报警系统方案一框图
方案二:
如图2.2所示系统结构框图,本方案仍以微型单片机为控制核心,由检测模块、信息处理模块、LED信息显示模块、控制输入模块和报警模块五大部分组成。
整个系统工作前,先将传感器装于点滴瓶“警戒”液位水平处。
单片机启动,开始监测工作。
当液位低于警戒液位时,传感器将输出一低电平,送入P1.0口(一张床位对应一个口,本设计只取一张床位模拟),然后由单片机内部的程序,对信息进行处理,将病床号显示到LED上,同时报警启动,提醒医护人员。
当由控制输入后,表示医护人员已经去对事件进行处理。
系统将复位,等待其他的床位监测信息。
图2.2液位监测报警系统方案二框图
2.2方案选择
方案一与方案二有很多相似之处,两个设计都运用到了单片机,用到了传感器,运用了LED显示管,而且在功能方面都很相似。
但综合分析:
超声波传感器较红外传感器要贵得多,而且方案一还需要A/D转换,成本就更高。
而且应用对象为点滴瓶,采用方案一,安装不方便,而且超声波传感器在这种应用下存在盲区,且对不同的大小的点滴瓶都要重新设定参数。
对于方案二而言,成本低,最重要的是安装上方便,医护人员可根据点滴瓶的大小,在安装时进行调整。
因此,从设计和经济的角度讲,我们组采用了方案二。
3单元模块设计
本课程设计主要由监测模块、信息处理模块(单片机模块)、LED信息显示模块、控制输入模块和报警模块五大部分组成。
其中最核心部分的部分是信息处理模块和检测模块。
3.1监测模块
本模块采用的是红外对射型余液液位传感器。
发光二极管和光敏二极管分别安装于“警戒”液位(由医护人员根据实际情况设定)两侧,处于对射状态。
在高位警戒液位时,LM339的反向输入端即3端口输入高电平,此时5端口输出高电平,即送入单片机的P1.0口。
当低于警戒液位时,光敏二极管导通,3端则输入低电平,5端随之也取反,然后送入单片机处理,已发出报警。
其原理图如图3.1:
图3.1红外对射型液位传感器原理图
3.2单片机模块
3.2.1AT89C52概述
AT89C52是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含8kbytes的可反复擦写的只读程序存储器(PEROM)和256bytes的随机取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性
存储技术生产,与标准MCS一51指令系统及8052产品引脚兼容,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大
AT89C52单片机适应于许多高性价比的应用场合。
图3.3AT89C52引脚
3.2.2AT89C52主要性能参数
·与Mcs一51产品指令系统和引脚完全兼容
·8k字节可重擦写Flash闪速存储器
·1000次擦写周期
·全静态操作:
OHz一24MHz
·三级加密程序存储器
·128X8字节内部RAM
·32个可编程I/O口线
·3个16位定时/计数器
·8个中断源
·可编程串行UART通道
·低功耗空闲和掉电模式
3.2.3AT89C52功能特性概述
AT89C52提供以下标准功能:
8k字节Flash闪速存储器,256字节内部RAM,32个I/O口线,3个16位定时/计数器,一个6向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。
同时,AT89C52可降至OHz的静态逻辑操作,并支持两种软件可选的节电工作模式。
空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。
掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。
3.3LED信息显示模块
本设计选用4位共阳极数码管作为显示模块。
数码管的A、B、C、D、E、F、G和DP分别与单片机的P2.0——P2.7相连。
而四位数码管的位则通过74HC138译码器来选通。
74HC138是一个3-8译码器。
74HC138的A、B、C与单片机的P1.5、P1.6、P1.7相连通,我们可以通过程序控制P1.5、P1.6、P1.7的输出进而控制3-8译码器的输出,从而达到选位的目的。
。
本次课程设计中的四位数码管与单片机的连接电路如图3.3,其选通情况如表3—3:
图3.2LED信息显示模块电路图
表3—3:
数码管选位情况表
P1.7P1.6P1.5
CBA
选位情况
000
000
Y0输出高电平即第1位被选中
001
001
Y1输出高电平即第2位被选中
010
010
Y2输出高电平即第3位被选中
011
011
Y3输出高电平即第4位被选中
3.4控制输入模块
本模块有2个独立按键,一个是复位按键,另一个为解除报警按键,接在P3.0口。
具体接线图如图3.4:
图3.4按键与单片机硬件接口电路
3.5报警模块
此次课程设计中为了达到低于“设定”液位后报警且显示对应床号的目的。
我们的主要思想是:
当1号床位的点滴低于“设定”液位,由红外液位传感器输出的低电平,送入单片机的P1.0口(四张床位的检测信号分别对应P1.0、P1.1、P1.2、P1.3),然后由单片机的内部加以处理,由P2口、P1口的高三位、74LS138译码器等作用,在LED上显示出对应的床位。
同时在P3.7口的作用下,报警器响起。
如果按下P3.0口外接的按钮,则报警停止,显示也熄灭,表示已有医护人员对信息进行处理。
其报警电路如图3.6。
图3.4报警电路
4软件设计
软件设计主要分为初始化程序、存储单元和中断设置初始化,主程序(内嵌报警程序)、报警中断子程序、中断服务子程序(显示程序)、延迟子程序。
先对要用到的存储单元,I/O口,寄存器进行相应的设置,然后主程序对四个端口P1.0、P1.1、P1.2、P1.3进行循环检测,当检测到有效信号时,则对相应存储单元赋值,然后继续其他端口检测,定时时间到时,对四个存储单元内的数据进行输出显示,报警也响起;当主程序检测到P3.0为高电平时,则终止报警,同时存储单元再次初始化,继续循环检测,重复相同“动作”。
程序流程图如图4.1。
..
图4.1程序流程图
5系统调试
本次设计在系统硬件调试方面,初期在老师的指导下,没遇到什么困难。
困难主要出现在后期,与软件合成后调试时,发现传感器信号输出方面无变北京:
国防工业出版社,1998.
附录1:
附图
1.1原理图
注明:
1、四位数码管分别对应四张床位
2、原理图左边四个按钮用来模拟四个液位传感器
1.2电路PCB板图
1.3软件代码
ORG0000H
AJMPSTART
ORG000BH;INT0
LJMPTIMER
ORG0030H
START:
MOVSP,#75H
MOVR1,#6CH
MOVR3,#8FH
MOVP2,#0FFH
MOVDPTR,#LEDTAB
MOVP3,#0
MOVTMOD,#01H
MOVTL0,#0F0H
MOVTH0,#0EFH
SETBEA
SETBET0
SETBTR0
MOV6CH,#5
MOV6DH,#5
MOV6EH,#5
MOV6FH,#5
;============================================
MAIN:
JBP0.0,BED2
SETBP3.7
MOV6CH,#1
BED2:
JBP0.2,BED3
SETBP3.7
MOV6DH,#2
BED3:
JBP0.4,BED4
SETBP3.7
MOV6EH,#3
BED4:
JBP0.6,HERE
SETBP3.7
MOV6FH,#4
;============================================
HERE:
JNBP3.7,NEXT
CPLP3.7
JBP3.0,STOP
CPLP3.7
NEXT:
SJMPMAIN
;============================================
STOP:
CLRP3.7
CLRP3.7
CLRP3.7
CLRP3.7
MOV6CH,#5
MOV6DH,#5
MOV6EH,#5
MOV6FH,#5
JMPMAIN
;============================================
TIMER:
MOVTL0,#0F0H
MOVTH0,#0EFH
MOVA,@R1
MOVCA,@A+DPTR
MOVP1,R3
MOVP2,A
MOVA,R3
ADDA,#20H
MOVR3,A
INCR1
CJNER1,#70H,OUT
MOVR3,#8FH
MOVR1,#6CH
OUT:
RETI
;============================================
DELAY2:
MOVR7,#200
L2:
DJNZR7,L2
RET
LEDTAB:
DB0C0H,0F9H,0A4H,0B0H,99H,0FFH
END
附录2:
相关设计软件
[1].KeiluVision2程序编辑软件
[2].ISIS7Professional仿真软件
[3].Protel99SE电路原理图设计,印制电路板设计软件