Implementation Of The Control System For Liquid-dropping Based On Single-Computer
Abstract: This paper deals with a control system for liquid-dropping based on the single-chip computer technology. For using conveniently, displaying directly,controlling intensively,alarming by sending out sound This system can be widely used in the hospitals to accelerate the process of automatic or half-automatic realizing for the medicine-appliance.
Keywords: Single-Computer, Liquid-drop, control system, alarm
摘要:文章介绍了一种基于AT89C52控制的医疗点滴输液控制系统的设计方法。该系统操作方便、显示直观、可集中控制、具有报警功能,适合在医院推广使用,以加速医疗器械加速自动化与半自动化进程,提高医护质量。
关键词:单片机 点滴 控制系统 报警
0 引言
目前医院普遍使用的是人工监控点滴输液装置器,将液体容器挂在一定高度,利用势差将液体输入病人体内,用软管夹对软管夹紧和放松控制滴速,医护人员按药剂特性对滴速进行控制。如何使这种手工操作走向自动化或半自动化,让护理人员监控病人打点滴的进程时间得到充分利用,使能自理的病人自己能掌握点滴的速度,这就要求医疗器械加速自动化与半自动化进程,提高医护质量。
本文介绍了一种操作方便、显示直观、可集中控制、具有报警功能的智能型液体点滴速度监控系统。该系统可让医护人员在控制室(通过主机)改变不同受液者(控制从机)的输液状况,也可以直接到输液室直接改变输液状态(直接控制从机),了解病人的输液进程,及时通知处理将快完成的输液。
1 硬件结构与工作原理
1.1 系统框图
整个系统由主站和从站两部分组成。主站安装在护理室,主要功能是观察各从站的工作状态和相应的一些简单的控制功能,当从站的有特殊情况报警时,主站也同时报警,提醒护理工作人员进行相应的处理。从站安装在每个输液器上,以完成输液点数的设置、检测、控制和报警等功能。主、从站之间采用串口方式相连。因为从站个数较多,用AT89C52自带的URAT不易实现,为此在主、从站之间采用扩展的方式来完成通信功能,只要在从站中用一8位寄存器就可完成256个从站的控制。在AT89C52上扩展扩展I2C的方法可参见文献[1]。
1.2 主站硬件设计
如图2所示,主站AT89C52的P0口接4×4阵列式键盘,P1口接八位LED显示模块,P3.6和P3.7与从机的P3.6和P3.7对接,通过扩展I2C总线串行通信,P3.0作为报警控制端口,通过一4.7K限流电阻接至三极管8050的基极,由8050驱动蜂鸣工作。八位共阴LED用CD4511七段译码驱动器驱动,74LS138译码位选通;复位电路采用复位芯片MAX813L以保证可靠复位。
1.3 从站硬件设计
从站有多个,硬件结构都相同,只是对主站而言,系统所设置的I2C总线地址不同。只要增加I2C总线编址位和附加I2C总线驱动,一个主站可以控制成百上千个从站。
从站键盘、LED、I2C总线、报警、复位等主体结构和主站类似,如图3所示。不同的是液滴检测信号由送入P3.5(T1),作为计数器1的输入;液面检测信号送入P3.2( ),作为外部中断0的触发信号;P2.0~P2.3的输出用来控制电机的启停和正反转,以调整液瓶的高度。
液滴检测电路如图4所示,红外发射、接收电路装在滴管上,每一滴药水都将使检测电路产生一个正脉冲。单片机正是通过记录正脉冲个数来检测点滴的流速。
液面检测电路如图5,由CD4609构成的振荡电路产生38KHz用于控制红外发射管发射,在正常情况下,J1(1380)输出高电平,单片机 输入为高电平,当液面下降到设定高度(由红外发射管和J1的安装位置决定)时,J1的输出会有一个下降沿跳变,用于触发单片机的外部0中断。
图6是步进电机的驱动电路。由P2.0~P2.3经三极管控制光耦的输入,并由光耦输出控制步直电机各组线圈的通断时间,从而完成步进电机的步进数和正反转控制。
2 软件设计
软件设计包括主站和从站两部分,涉及功能比较复杂,简单起见,只说明主要的编程思想。
2.1主站程序设计
主站要完成的功能主要是对从站进行定点检测和巡回检测,并和从站通过I2C总线进行数据交换,并对键盘进行扫描,根据键盘输入和I2C总线进行数据交换结果进行相应的操作(如报警、LED显示从站号和从站流速等)。主程序完成监测I2C总线请求、键盘的扫描,并根据键盘的输入调用相应的功能程序实现其控制功能。LED显示的可由T0定时中断程序调用。键盘扫描和LED显示程序的编写可参考文献[2]。主机信息处理程序流程如图7所示,由键盘设定检测方式后调用此子程序。如设置的是定点方式,则由键盘输入从站号后启动I2C总线,由I2C总线进行信息交换后可得知从站的状态,并显示出来;如为巡回检测方式,每按一下键就检测一个从站,检完为止。
2. 2 从站程序设计
从站键盘扫描、LED显示、报警与I2C总线程序设计和主站类似,不同的主要有两点,一是要实现点滴速度检测、控制功能,二是要实现液面检测报警功能。点滴速度检测采用硬件定时和软件定时相结合的方式进行:每当T1有一脉冲信号,计数器自加1,并启动内部定时器T0计时,T0设置计时值为50毫秒,T0每一次中断都使一寄存器加一,这样可实现数百毫秒~数秒的定时,下滴到来时保留其值,并从新计时。以连续4滴的平均时间转换为每分钟的滴数作为控制依据。
从站点滴速度检测控制程序流程如图9所示,并由主程序循环调用。当主程序调用此程序后,按如上原理检测点滴速度,如速度值太大或太小(和设定的极限值比较),从站报警,并启动I2C总线将从站号和报警信号传到主站,主站接到信号后也报警。如速度值在允许范围内,则和护理人员设定的值比较,如相差在3滴之内,认为速度合适,不要调整,如超过3滴,则根据值的大小控制电机正转或反转一周,以调整滴瓶的高低,从而改变流速。主程序循环调用能将速度调整到设定范围内。
液面检测电路输出作为外部中断0的触发信号,中断0的服务程序如图9所示。当外部中断0响应时,说明液面已低于设定值,从站并启动I2C总线将从站号和报警信号传送到主站,主站报警。
2 系统测试
系统测试主要应包括从站点滴速度检测、调整,液面检测报警;主站报警和主从站通信检测等。经测试试验验证,从站液面检测报警、主站报警和主从站通信检测都能很好的工作。从站的从站点滴速度检测、调整功能决定着系统的整体性能。测试结果分别如图10和表1所示。
由图10知, 点滴速度测量实际值和理论值吻合得很好,由表1知不论是在全量程范围内,还是在一个较小的调整范围内,测量误差都远小于设定值的±10%±1滴。稳定时间小于2分钟,证明系统的调整较高,达到实际使用的要求。
3 总结
本系统采用单片机技术,电路简洁,成本低,控制精度和效率高,稳定性好;操作方便、显示直观、可集中控制、具有报警功能,在一定程度上解决了医护人员工作负担过重的问题,适合在医院推广使用,加速医疗器械自动化与半自动化进程,提高医护质量,
参考文献
[1] 赵亮、侯国锐 单片机C语言编程与实例[M]. 北京:人民邮电出版社 2003.9:163~179
[2] 胡汉才.单片机原理及其接口技术[M].北京:清华大学出版社1995.9:184~190,261~284.