基于单片机的输液监控系统设计.docx
《基于单片机的输液监控系统设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的输液监控系统设计.docx(36页珍藏版)》请在冰豆网上搜索。
基于单片机的输液监控系统设计
摘要
输液是医院经常使用的医治手腕,传统输液进程中存在着输液速度不精准,需要人工监护等短处。
本文设计了一种以C8051F410单片机为核心的布线式输液监控系统用以解决此问题。
系统通过RS-485接话柄现有线通信与监控,具有液滴检测,液滴速度调控,报警等功能。
采纳红别传感器技术检测液滴和输液高度,单片机用以实现输液速度计算和显示,通过查询键盘,将实时设定的点滴速度值与实际输液速度进行比较,来操纵步进电机调剂输液瓶高度,从而操纵点滴速度,输液终止或异样时自动报警提示。
关键词:
输液监控;单片机;液滴检测;速度调控
ABSTRACT
Infusionasatreatmentiscommonlyusedinhospital.Duringthetraditionaltransfusion,therateofinfusionisimprecise,italsorequiresmanualmonitoringandexistsotherdefects.ThispaperdesignacablingtypesystemwhichusingC8051F410single-chipasitscoretosolveabove-mentionedproblems.
ThissystemthroughtheRS-485interfacetoachievecommunicationandmonitoring,Ithasmanyfunctions,suchastestingthedrop,controllingthespeedofdropandalarmfunctions.Usinginfraredsensorstodetectaliquiddropandtheheightofliquidmedicine,themicro-controllerachievetocalculateanddisplaythespeedofqueryingthekeyboardinrealtimetoreadthevalueofthesetrate,thesystemcomparesthesetratewiththeactualinfusionratetocontrolthesteppermotorrunningtoadjusttheinfusionbottle’sheight,andthuscontroltherateoftheinfusionisendingorabnormal,thesystemwillstartthealarmprogram.
KEYWORD:
infusionmonitor;single-chip;speeddetection;speedcontrol
第1章引言
课题背景
上世纪90年代至今,国内外相关的专家踊跃探讨,输液监控系统一直在不断改良。
在国内:
09年张婉姣申请了一种输液监控报警器的专利:
包括光源发射器、光源接收器、电源模块、操纵器和报警电路,光源发射器和光源接收器要对应设置,光源接收器输出端连接到操纵器的信号输入端,操纵器的信号输出端连接到报警电路的信号输入端[1]。
该输液监控报警器在输液显现不正常时或瓶内液滴快要滴完的时候会进行声光报警。
该输液监控报警器优势:
结构简单、利用方便、报警准确率高等。
缺点:
功能较少。
徐凤霞等人利用MCS-51系列单片机与电力线载波芯片结合其他软件、硬件开发出病区输液远程监控系统。
刘世平等人研制的输液智能监控系统能够同时在病房和护士站发作声光报警,且在报警的同时自动停止输液。
另外,在护士工作站能够显示该病床的输液的相关信息。
在国外:
在40世纪80年代就开始有研究。
德国、韩国、美国、日本等发达国家都进行了输液监控系统的研究,目前对输液泵的研究有较大成绩[2]。
输液泵的功能齐全,操作方便,平安性高,可是价钱比较昂贵。
其应用在我国国内医院鲜有应用。
基于单片机的输液监控系统设计的课题研究,是为了在借鉴前人体会的基础之上,尽力设计出性价比较高的输液监控系统。
课题研究的目的和意义
目前,临床医治上的静脉输液的输液进程存在平安隐患,它要紧面临着两个问题。
一是输液速度问题。
在医院,输液速度的调剂一样由医院护士或病人通过旋转输液滴管上的机械滑轮,目测出可能速度,效率不高[3]。
在长时刻的输液进程中,护士需要维持紧张情绪对病人进行治理和监督,工作强度大。
关于患者来讲,在护理人员忙碌的时候须时刻关注自己的输液情形,得不到休息而阻碍医治成效。
二是可能显现静脉血回流。
有时护理人员因为其他缘故没有及时回来处置或病人太累没有注意到,结果造成静脉血回流的情形,对患者造故意灵上和躯体上的损害。
总之,传统的人工输液监护形式短处很多,克服目前输液进程中时刻浪费、精力浪费、效劳水平低劣等短处,需要研制输液监控系统,对患者的输液进程进行自动化监控。
论文的组织结构
第1章要紧介绍了输液点滴监控系统的背景与研究意义,本课题的要紧工作和内容和本文的组织结构。
第2章为系统的整体设计。
第3章为系统硬件设计,要紧进行了系统方案论证,介绍了硬件结构的设计方式。
包括通信接口单元,C8051F410单片机最小系统、点滴信号检测单元、键盘与显示单元、声光报警单元、电动机模块单元。
第4章为系统软件设计。
先介绍系统从站工作的要紧流程,说明系统顶用到的几个比较重要的寄放器,再分块介绍了部份软件的算法与实现,包括PCA捕捉模块、电动机模块、声光报警模块。
第5章为结论。
第6章为参考文献。
第2章系统整体设计
依照前面的系统分析,本文基于C8051F410的输液监控系统要紧模块有:
输液信号搜集单元、声光报警单元、电动机单元、按键显示单元、通信单元和单片机外围电路等。
输液信号搜集单元将搜集到的信号通过整形后发送给单片机,经单片机处置后在键盘上显示计算所得的液滴滴速并将其与所设定的值进行比较来操纵电动机的正反转。
从站系统框图如图2-1。
图2-1系统整体框图
C8051F410单片机介绍
C8051F410是一款完全集成的低功耗混合芯片上系统型MCU。
它具有高速、流水线结构的8051兼容的微操纵器核(可达50MIPS),高精度可编程的内部振荡器,可达32KB的片内FLASH存储器,2304字节的片内RAM,4个通用的16位按时器,6个捕捉/比较模块和带看门狗按时器功能的可编程计数器/按时器阵列(PCA),硬件CRC引擎,温度传感器,片内电压比较器,且拥有多达24个I/O端口。
具有片内上电复位,VDD监视器,看门狗按时器和时钟振荡器的C8051F410是真正能独立工作的片上系统。
FLASH存储器还具有在系统从头编程能力,可用于非易失性数据存储,并许诺现场更新8051固件。
用户软件对所有外设具有完全的操纵,能够关断任何一个或所有外设以节省功耗。
C8051F410片内SiliconLabs二线(C2)开发接口许诺利用安装在最终应用系统上的产品MCU进行非侵入式(不占用片内资源)、全速、在系统调试。
调试逻辑支持观看和修改存储器和寄放器,支持断点、单步、运行和停机命令。
在利用C2进行调试时,所有的模拟和数字外设都可全功能运行。
两个C2接口引脚能够与用户功能共享,使在系统调试功能不占用封装引脚。
C8051F410单片机最小系统如以下图所示:
图2-2C8051F410单片机最小系统
第3章系统硬件设计
方案论证
点滴速度检测方案
方案一:
采纳电感式传感器测量点滴速度。
在输液器的漏斗外围绕线圈作为灵敏元件。
当液滴淌下时电感量发生转变,通过LC振荡电路后输出转变的频率值,通过F/V变换电路及电压比较后输出TTL电平信号来检测点滴速度。
此方案测量精度比较高,可是外围电路比较复杂。
方案二:
采纳红外对管发射接收。
采纳断续式的工作方式,在点滴落下时阻挡了接收管接收红外线,产生高电平的脉冲信号。
为了提高抗干扰能力,能够采纳两对红别传感器一发一收,而不是只用一只传感器以反射式状态工作。
红别传感器有以下优势:
尺寸小、质量轻,安装在滴斗上较简单。
它对辅助电路要求少,在近距能够用直流发射,电路简单,性能稳固。
方案二简单,较容易实现,而且利用了非接触式光学测量方式,幸免了交叉感染[7],因此采纳此方式。
液位检测方案
方案一:
同点滴速度测量模块,仍然采纳红外对管发射接收。
依照该接收管收到的光强的大小来判定液位是不是达到警戒水位。
利用光在不同媒介界面的折射或反射原理,通过光电传感器来同意光信号实现液面检测功能。
另外,红外线对射管安装方便,只需将其固定在输液瓶外壁上即可,不需要详细计算储液瓶液面的高度,简化了外围电路结构。
方案二:
采纳拉力传感器检测。
将拉力传感器接在滑轮与输液瓶之间,利用液面高度转变和拉力转变之间的线性关系进行间接测量,可是拉力传感器价钱高,从有效性考虑成效不佳。
方案三:
用测定电容的方式来检测。
在瓶壁上用两块薄金属箔包裹构造出一个电容。
依照电容中的介质不同,能够确信是不是达到警戒水位。
此数据能够由实验中得出。
综合比较上面上中方式,从有效,简便同时保证测量精准度上,利用红外线模块测量液面高度是理想的选择。
速度操纵方案
方案一:
通过改变输液瓶的高度来调剂点滴的速度。
由电动机带动储液瓶使储液瓶缓慢平稳地上升或下降来改变受液瓶的高度,从而调剂点滴速度。
方案二:
通过操纵滴速夹的松紧来操纵点滴的速度。
只是滴速夹用于大范围地调剂滴速,而且存在很多因素,例如橡胶粘度与液体粘度,输液管受挤压后的恢复情形等等,这些都是非线性操纵量,因此其移动距离,移动阻力等参数难于计算,用机电系统实现起来较为困难,比较适用于粗调。
方案一调剂方式简单,容易实现,其硬件连接如图3-1。
图3-1电动机操纵输液瓶模型
电机选择及操纵方案
经常使用的电机要紧有以下几种:
直流电机、步进电机、伺服电机。
方案一:
直流电机上电即可转动,掉电后惯性较大,停机时还会转动必然角度后才可停止,若是要求准确操纵其转动的角度,其闭环算法比较复杂,系统硬件也会相应麻烦。
方案二:
伺服电机的机械特性较好,输出功率大,启动转矩大,驱动电路简单,正反转操纵容易且有抱死功能,但有由于其实际价钱偏高,不适合普遍利用。
方案三:
步进电机是一种将电脉冲转换为角位移的执行元件[8]。
步进电机转矩相对直流电机大,操纵精度比较高,其步进转过的一个角度也固定,适用于较精准的测量,这可有效提高输液速度的操纵精度。
因此,电机选用步进电机最正确。
键盘显示单元
滴速的大小要由人工设定,滴速的设定值与实际值也都必需在键盘上显示。
方案一:
采纳液晶显示屏和通用矩阵键盘。
液晶显示屏(LCD)具有功耗小、轻薄短小无辐射危险、平面直角显示和影象稳固不闪烁、可视面积大、画面成效好、抗干扰能力强等特点。
但由于只需显示三位速度值,信息量比较少,用LCD显示本钱相对偏高。
方案二:
采纳8位LED七段数码管显示点滴数量。
数码管具有:
低能耗、低损耗、低压、寿命长、耐老化,对外界环境要求较低。
同时数码管采纳BCD编码显示数字,程序编译容易,资源占用较少。
本设计采纳TM1639外部扩展芯片,通过三个端口即可实现了键盘和LED显示功能,节省并预留了端口来进行功能优化。
模块的硬件设计
系统的组成单元
系统要紧有5个单元组成,别离是C8051F410单片机最小系统、红外线检测单元、步进电机单元、声光报警单元、键盘及显示单元,如图3-2所示。
图3-2系统组成单元
通信接口电路设计
因为PC机RS232串口采纳的是RS232传输协议,它的高低电平别离为-l2V和+12V,与单片机的电平不一致,因此不能将PC机和单片机用电缆直接进行连接,在PC机和单片机之间必需增加一个RS232/TTL电平转换电路,即通信接口电路通常选择专用的RS232接口电平转换集成电路,如MAX23二、HIN232等,NIH232和MAX232能够直接互换。
那个地址选用NIH232CP芯片来完成串口接口电路。
图3-1通信接口电路
点滴信号检测模块
此单元模块用来检测是不是有液滴淌下,其传感器部份采纳红外对射器。
红外对射传感器是由红外发射管和接收管组成的,它的要紧功能是实现电——红外线——电的转换。
其大体原理是以光电效应为基础,将被测量的转变转换为光信号的转变,然后借助光电元件进一步将光信号转化成电信号。
当有液滴滴落要通过光源和光电同意器件之间时,光线会发生折射和散射,致使光电接收器件接收不到光信号,这光阴电器件输出一个电平跳变。
由于红外光波长比可见光长,灵敏波长为μm~μm周围,受可见光阻碍较小,其红外系统也具有尺寸小,重量轻,易于安装等优势,因此它是检测液滴滴速的首选传感器。
键盘及显示模块
此系统利用的键盘与显示单元都是通过TM1639扩展后再连接到单片机上。
TM1639是带键盘扫描接口的LED(发光二极管显示器)驱动操纵专用电路,内部集成有MCU数字接口、数据锁存器、LED高压驱动、键盘扫描等电路,其硬件原理图如图3-3。
它要紧应用于冰箱、空调、家庭影院等产品的高段位显示屏驱动和键盘扫描。
图3-3TM1639管脚概念
GR1~GR8,别离是8个位输出接口
SEG1~SEG4,SEG9~SEG12别离是8个段输出接口,其中SEG1~SEG4也用作键扫描
K0~K1是键扫描数据输入端
VDD接逻辑电源
GND接逻辑地
DIO是串行通信接口的数据输入/输出口,在时钟上升沿输入/输出串行数据,从低位开始。
CLK是串行通信接口的数据时钟输入接口。
STB为串行通信接口的数据的片选接口,在上升或下降沿初始化串行接口,随后等待接收指令。
STB为低后的第一个字节作为指令,当处置指令时,当前其它处置被终止,当STB为高时,CLK被忽略。
通过译码,取最高B7、B6两位比特位以区别不同的指令,当他们为01时为数据命令指令,如下表3-1所示,10时为显示操纵命令设置,11时为地址命令设置;CLK为时钟输入口,在上升沿输入/输出串行数据。
表3-1TM1639数据命令指令
TM1639与操纵器通过三线串口进行数据传输,读取和接收数据时序别离见图3-4(a)和图3-4(b),能够看出,读取和接收1个BIT都在时钟的上升沿操作,读取/写入数据,均依照从低位地址到高位地址,从字节的低位到高位操作。
(需要注意:
读数据时,从串行时钟CLK的第8个上升沿开始设置指令到CLK下降沿读数据之间需要一个等待时刻Twait。
)
3-4(a)数据接收时序图
3-4(b)数据读取时序图
TM1639扩展后,其硬件原理图如图3-5所示。
图3-5TM1639硬件原理图
一样来讲,多个数码管的连接并非是把每一个数码管都独立的与可编程逻辑器件连接,而是把所有的LED管的输入连在一路。
如此做的益处有两点:
一是节约了器件的IO口;其二是降低了功耗。
每次向LED写数据时,通过片选选通其中一个LED,然后把数据写入该LED管,因此每一个时刻只有一个LED管是亮的。
为了能持续看见LED上面的显示内容,必需对LED管进行扫描,即依次并循环地址亮各个LED管。
利用人眼的视觉暂停效应,在必然的扫描频率下,人眼就会看见好几个LED一路点亮。
每一个LED的功耗较大,若是所有的LED一路点亮,其功耗较大。
利用扫描的方式,每一个时刻只有一个LED管是亮的,能够大大的减少功耗。
扫描频率大小不准适合才能有专门好的成效。
若是过小,而每一个LED开启的时刻大于人眼的视觉暂停时刻,那么会产生闪烁现象。
而扫描频率太大,那么会造成LED的频繁开启和关断,大大增加LED功耗(开启和关断的时刻功耗专门大)。
一样来讲,扫描频率选在50Hz比较适合。
报警模块
当传感器检测到液位低于预设值或传感器检测不到有液滴滴落时,单片机操纵蜂鸣器,在发作声光报警的同时向主站发出报警信息。
压电式蜂鸣器工作时约需10mA的驱动电流,由于单片机输出信号不能直接驱动蜂鸣器,因另外接驱动电路。
如以下图所示,蜂鸣器作为三极管Q2的集电极负载,当Q2导通时,蜂鸣器发出鸣叫声;Q2截止时,蜂鸣器不发声,R4是限流电阻。
蜂鸣器发声原理是电流通过电磁线圈,使电磁线圈产生磁场来驱动振动膜发声的,因此需要必然的电流才能驱动它,单片机IO引脚输出的电流较小,单片机输出的TTL电平大体上驱动不了蜂鸣器,因此利用推挽式输出来驱动蜂鸣器。
咱们能够通过改变单片机P03引脚输出波形的频率来调整操纵蜂鸣器音调,产生不同音色,音调的声音。
另外,通过改变输出波形高电平的占空比,那么能够调整蜂鸣器的声音大小。
在实际应用中,若是设定的滴速太高,输液瓶上升到支架顶部时,仍达不到设定的滴速,输液瓶继续上升有可能会拉倒支架,造成危险。
因此在支架的顶部安装一个红外探测器,如检测到输液瓶上升到支架顶部,那么发出信号,通知单片机操纵电机停转,同时发作声光报警并向主站发送报警信号。
另外,在检测到的输液速度太低时或输液即将终止的时候也会发出报警信号。
电动机驱动模块
步进电机由单片机产生脉冲,经驱动电路变换、放大后输入步进电机。
操纵电路每发一个脉冲,驱动电路那么驱动步进电机走一步,这种操纵方式叫脉冲操纵型。
单片机输出操纵三极管通断来给步进电机驱动信号。
其中驱动器中通过光耦来进行隔离。
驱动步进电机采纳24V供电,而操纵电路采纳5V供电。
CP为脉冲输入信号,每给一个脉冲,电机便会走一步,若是停止给CP的脉冲输入,那么步进电机便会当即停止工作。
单片机第一通过设定值和现有值的差值判定出电机的转动方向,然后发出相应的脉冲,调整输液瓶高度,因此,能够通过步进电机准确的操纵输液瓶的高度。
而CW为正反转操纵信号,通过操纵CW来操纵电机使输液瓶正反转。
整个电机驱动模块如图3-5。
图3-6电动机硬件原理图
第4章系统软件设计
软件设计框架
图4-1主程序流程图
主程序功能:
它对一系列寄放器进行初始化,其中包括PCA操纵寄放器,PCA方式寄放器,中断寄放器,内部振荡器操纵寄放器,计数器/按时器操纵寄放器,端口I/O交叉开关操纵寄放器。
在其循环程序中要紧进行显示滴速(实际滴速与设置滴速),键盘查询,判定与设置滴速与实际滴速之间的关系从而操纵电动机正反转,另外循环程序中还要判定是不是有报警信号,若是有那么要使发光二极管发光,驱动蜂鸣器发声,停止电动机工作。
主程序的功能流程图如图4-1。
系统中还包括两种中断,别离是PCA中断,按时器中断。
PCA中断:
PCA包括两个中断,用于统计两滴液滴淌下时它们之间的时刻距离,因此它能够用来计算的液滴的滴速。
按时器中断:
本系总共有2个按时器中断,用来形成固定频率的脉冲来供给电动机和蜂鸣器利用。
芯片要紧寄放器介绍
信号的搜集是系统工作的前提,也是保证系统准确性最初始的一步,若是搜集到的信号能够准确有效,将使整个装置的靠得住性取得提高。
当有液滴滴落时,红外同意传感器会传过来一个上升沿脉冲,系统搜集液滴信息时确实是检测上升沿和上升沿之间的距离时刻。
这要紧用到了PCA捕捉模块和PCA计数器/按时器寄放器。
PCA计数器/按时器
16位的PCA计数器/按时器由两个8位的SFR组成:
PCA0L和PCA0H。
PCA0H是16位计数器/按时器的高字节(MSB),而PCA0L是低字节(LSB)。
在读PCA0L时,“瞬象寄放器”自动锁存PCA0H的值,随后读PCA0H时将访问那个“瞬象寄放器”而不是PCA0H本身。
先读PCA0L寄放器能够保证正确读取整个16位PCA0计数器的值。
读PCA0H或PCA0L不阻碍计数器工作。
PCA0MD寄放器中的CPS2-CPS0位用于选择PCA计数器/按时器的时基。
当计数器/按时器溢出时(从0xFFFF到0x0000),PCA0MD中的计数器溢出标志(CF)被置为逻辑1并产生一个中断请求(若是CF中断被许诺)。
将PCA0MD中ECF位设置为逻辑1即可许诺CF标志产生中断请求。
当CPU转向中断效劳程序时,CF位不能被硬件自动清除,必需用软件清除。
注意,要使CF中断取得响应,必需先整体许诺PCA0中断。
通过将EA位()和EPCA0位()设置为逻辑1来整体许诺PCA0中断。
清除PCA0MD寄放器中的CIDL位将许诺PCA在微操纵器内核处于空闲方式时继续正常工作。
PCA捕捉/比较模块
芯片有6个捕捉模块,每一个模块都可被配置为独立工作,有六种工作方式:
边沿触发捕捉、软件按时器、高速输出、频率输出、8位脉宽调制器和16位脉宽调制器。
每一个模块在CIP-51系统操纵器中都有属于自己的特殊功能寄放器(SFR),这些寄放器用于配置模块的工作方式和与模块互换数据。
PCA0CPMn寄放器用于配置PCA捕捉/比较模块的工作方式,表4-1概述了模块工作在不同方式时该寄放器列位的设置情形。
置位PCA0CPMn寄放器中的ECCFn位将许诺模块的CCFn中断。
注意:
要使单个的CCFn中断取得响应,必需先整体许诺PCA0中断。
通过将EA位()和EPCA0位()设置为逻辑1来整体许诺PCA0中断。
表4-1PCA捕捉/比较模块的PCA0CPM寄放器设置
PWM16
ECOM
CAPP
CAPN
MAT
TOG
PWM
ECCF
工作方式
X
X
1
0
0
0
0
X
用CEXn的正沿触发捕捉
X
X
0
1
0
0
0
X
用CEXn的负沿触发捕捉
X
X
1
1
0
0
0
X
用CEXn的跳变触发捕捉
X
1
0
0
1
0
0
X
软件定时器
X
1
0
0
1
1
0
X
高速输出
X
1
0
0
X
1
1
X
频率输出
0
1
0
0
X
0
1
X
8位脉冲宽度调制器
1
1
0
0
X
0
1
X
16位脉冲宽度调制器
PCA操纵寄放器
下面是对与PCA工作有关的PCA操纵寄放器进行的说明。
表4-2PCA0CN:
PCA操纵寄放器
CF
CR
CCF5
CCF4
CCF3
CCF2
CCF1
CCF0
CF:
PCA计数器/按时器溢出标志,当PCA计数器/按时器从0XFFFF到0X0000溢出时由硬件置位。
在计数器/按时器溢出(CF)中断被许诺时,该位置1将致使CPU转向PCA中断效劳程序。
该位不能由硬件自动清0,必需用软件清0。
CR:
PCA计数器/按时器运行操纵,当它为1时,许诺PCA计时器/按时器。
CCF0:
PCA模块0捕捉/比较标志,在发生一次匹配或捕捉时该位由硬件置位。
当CCF0中断被许诺时,该位置1将致使CPU转向PCA中断效劳程序。
该位不能由硬件自动清0,必需用软件清0。
算法分析与实现
电动机的转速
系统中输液瓶的高低是由电动机来带动。
由于输液瓶上升下降要维持输液的平稳性和垂直型,因此电动机转动的转速不能过