基于Small RTOS51的肠营养液输液系统_第1页
基于Small RTOS51的肠营养液输液系统_第2页
基于Small RTOS51的肠营养液输液系统_第3页
基于Small RTOS51的肠营养液输液系统_第4页
基于Small RTOS51的肠营养液输液系统_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于Small RTOS51的肠营养液输液系统来源:单片机及嵌入式系统应用 北京航空航天大学陈杰峰王自强摘要:介绍一种基于SallRTS51嵌入式操作系统的医疗仪器智能型肠营养液输液泵。首先介绍系统的功能及硬件组成,然后重点介绍如何利用SallRTS51来设计系统软件。最后,给出应用SallRTS51嵌入式操作系统制造的智能型肠营养液输液泵的试验数据。关键词:SallRTS51实时操作系统肠营养液泵嵌入式操作系统引言随着各种电子系统在各个领域中应用的不断深化,对电子系统本身的要求也越来越高,尤其对于控制系统软件设计的可靠性、实时响应等各个方面的性能有了更严格的要求。单片机的程序设计不再是前后台

2、的运行形式,而是采用多任务实时操作系统的设计思想。由于使用嵌入式操作系统,可以将详细应用分解成多个任务,简化了应用系统软件的设计,使控制系统的实时性得到保证,使其到达理想状态。良好的多任务设计,还有助于进步系统的稳定性和可靠性。目前,国内应用最多的是以51系列单片机为主的8位单片机。在51系列单片机系统中,可以进展移植的嵌入式操作系统为数不多。其中,KEil自带的RTX51没有源代码,使用起来很不方便;u/SII虽然有源代码,也有移植成的例子,但是,它对于51系列单片机系统的资源占用过大,需要外扩RA,而且要保证每个函数的可重入性,使用起来比较勉强。SallRTS51是专门为小RA系统设计的占

3、先式内核,占用资源少、实时性好,应用在本系统上非常适宜。1系统功能及硬件描绘11系统的功能描绘对于处于昏迷状态或食道进展手术的病人,需要一种按时、按量对病人进展肠营养液输入的智能型肠营养液输液泵,以到达维持病人生命的目的。本文介绍的智能型肠营养输液泵以下简称营养泵主要实现以下功能:*根据要求,可以设定输入营养液的总量、流速、温度等参数,并且在运行过程中可以任意修改;*根据指令,自动检测和控制营养液的流量和流速,并将数据反响给主程序;*根据设定营养液的温度,自动检测和控制营养液的温度,并将温度数据反响给主程序;*在出现营养液的温度、流量和流速异常时,发出声、光报警信号;*使用LD显示各种数据,随

4、时查看已经输入营养液的数量、温度、流量和流速;*营养泵主要由220VA供电,同时备有应急充电电池,一次充电可以连续运行12小时以上,以备医院紧急停时使用。12系统的硬件描绘本营养泵的电路原理框图如图1所示。系统的主控PU采用Philips公司的8951RD2,实现系统的多任务控制;LD采用北京青云的L12232B液晶模块,显示液体的控制参数;控制温度的DA采用TI公司的TL5615,使营养液温度误差到达0.1以内;电池容量和温度的反响值均为模拟电压,采用A/D,转换后,送入PU;A/D转换器使用的是TI公司的TL1543;应急电池充电电路,采用Linear公司的LT4006,充电电压为12.6

5、V,电池容量为4000Ah;营养液流量反响,采用红外线对管,直接由PU记数;营养泵电机使用直流电动机,采用控制电机运行和停顿时间的方法对转速进展闭环控制,以到达控制液体流量的目的。2SallRTS51简介SallRTS51是一个专门为51系列单片机设计的嵌入式实时操作内核,使用Keil编译器可以直接使用其代码,它有如下特点。公开源代码。只要遵循容许协议,任何人可以免费获得源泉代码,便于用户的二次开发。可移植性。用户可以把与PU有关的控制指令压缩到最小,把大部分精力放在PU的控制程序上。可以使用ANSI编写应用程序,不仅简化了编程手段,而且便于程序移植。可固化性。SallRTS51为嵌入式系统设

6、计,可以嵌入到产品中,成为产品的一部分。占先式运行。SallRTS51可以管理16个用户任务,每个任务可以设置不同的优先级。SallRTS51总是运行优先级最高的任务。中断管理。采用中断管理方式,当有更高级的中断申请时,将目前正在执行的任务挂起。假设优先级更高的任务被中断唤醒,那么高优先级的任务在中断嵌套完毕后立即执行。中断嵌套层数可达255层。假设需要,还可以制止中断的嵌套管理。RA需求校SallRTS51为小RA的系统设计,因此对RA的需求只有几百字节,相应的系统效劳也少。3系统的软件实现按照系统所要实现的功能,将整个系统划分为几个并行的任务,占先式操作内核对任务的调度是按照任务优先权的上

7、下进展。本文中,将系统划分为9个任务,按其优先级从高到低的顺序排列依次是:报警任务、温控任务、按键输入任务、主控制任务、电机运行任务、流量控制任务、记时任务、液晶显示任务和电池电量检测任务。系统上电以后进入主程序,首先对系统进展自检并任务,启动9个程,此时系统的运行就由SallRTS51来接收。31报警任务由于本文所述的营养泵,主要应用在危重病人的看护中,所以将报警任务在放在最重要的位置。报警程序由一个全局变量setbajing来控制,其不断检测温控程序、流量控制程序和电池电量检测程序的输出值。当上述程序出现故障报警信号时,setbajing为1,报警程序立即使蜂鸣器和报警灯工作,并在液晶屏幕

8、上显示出现故障的名称,直到有人来去除故障后,才可以正常运行。32温控任务由于人体对于温度的变化非常敏感,而肠营养液是直接输入到人的小肠当中,所以系统对温度的要求非常高,为此,本系统将温控任务放在第二位。先将设定的温度参数输入给PU,经过PI计算,发出数字信号,再用TL5615转换成模拟量,控制加温电路给营养液加温。营养液的实际温度,由温度反响电路转换成电压信号,再通过A/D转换成数字信号反响给PU,由PU进展闭环控制。33控制输入任务按键是实现人机交互的重要设备,要务实时性较高。从系统软件的设计角度,不仅要读出按键的状态,还需要具有对按键的抖动、连击、串键等特殊情况进展处理。系统按键输入任务流

9、程如图2所示,本任务使用消息队列指令KeyReadBuf16,向主控制程序发送按键的相关信息。34主控制任务主控制任务应用SallRTS51提供的系统函数SQPend(KeyTep,KeyReadBuf,0)来查录按键输入任务提供的信息,一旦觉察KeyReadBuf16中有了相关信息,立即运行输入程序。根据按键的命令,控制电机运行程序、流量控制程序、液晶显示程序的运行及停顿,每当有一组按键信息进入消息队列中,本程序就修改一次运行指令。3.5电机运行任务电机运行任务一直处于等待的状态,当主控制程序给它发关字相应的指令才开始运行。在运行过程中,电机运行任务受到主控制程序和流量控制程序的控制,一旦有

10、停顿运行的命令,或流量有异常,就立即停顿电机的运行。36流量控制任务液量控制任务主要由PU来控制输入营养液的流量及流速。正常运行情况下,流量控制程序会向液晶显示程序发送流量及流速的信息,使液晶上显示已经输入营养液的数量、流量及流速。一旦发生异常情况,如流速过快、一段时间营养液没有流动等故障,立即向电机运行程序发出指令,停顿电机的运行,同时将setbajing置1,使报警程序运行。37记时任务记时任务主要是为系统提供一个同步时钟,为系统提供同步运行的基准。38液晶显示任务液晶显示任务主要由主控制程序、报警程序、流量控制程序、电池电量检测程序传递到消息队列中的参数。通过运行显示程序,在液晶上显示相关的汉字和字符,本身不向其它任务发送命令。39电池电量检测任务一旦发生220VA市电断电的情况,营养泵会立即自动切换到内置的锂电池供电,电池可以连续使用12小时以上。电池电量检测程序会自动运行,检测电池的电量。在电量低的情况,电池电量检测程序会发出报警信号,但不会主动停顿系统的运行。4试验数据用本文所述的智能肠营养液泵对目前市场上常

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论