基于Small RTOS51的肠营养液输液系统
来源:单片机及嵌入式系统应用 作者:北京航空航天大学 陈杰峰 王自强
摘要:介绍一种基于Small RTOS51嵌入式操作系统的医疗仪器——智能型肠营养液输液泵。首先介绍系统的功能及硬件组成,然后重点介绍如何利用Small RTOS51来设计系统软件。最后,给出应用Small RTOS51嵌入式操作系统制造的智能型肠营养液输液泵的试验数据。 关键词:Small RTOS51实时操作系统 肠营养液泵 嵌入式操作系统 引言 随着各种电子系统在各个领域中应用的不断深入,对电子系统本身的要求也越来越高,尤其对于控制系统软件设计的可靠性、实时响应等各个方面的性能有了更严格的要求。单片机的程序设计不再是前后台的运行模式,而是采用多任务实时操作系统的设计思想。由于使用嵌入式操作系统,可以将具体应用分解成多个任务,简化了应用系统软件的设计,使控制系统的实时性得到保证,使其达到理想状态。良好的多任务设计,还有助于提高系统的稳定性和可靠性。 目前,国内应用最多的是以51系列单片机为主的8位单片机。在51系列单片机系统中,可以进行移植的嵌入式操作系统为数不多。其中,Keil自带的RTX51没有源代码,使用起来很不方便;uC/OSII虽然有源代码,也有移植成的例子,但是,它对于51系列单片机系统的资源占用过大,需要外扩RAM,而且要保证每个函数的可重入性,使用起来比较勉强。Small RTOS51是专门为小RAM系统设计的占先式内核,占用资源少、实时性好,应用在本系统上非常合适。 1 系统功能及硬件描述 1.1 系统的功能描述 对于处于昏迷状态或食道进行手术的病人,需要一种按时、按量对病人进行肠营养液输入的智能型肠营养液输液泵,以达到维持病人生命的目的。本文介绍的智能型肠营养输液泵(以下简称营养泵)主要实现以下功能: *根据要求,可以设定输入营养液的总量、流速、温度等参数,并且在运行过程中可以任意修改; *根据指令,自动检测和控制营养液的流量和流速,并将数据反馈给主程序; *根据设定营养液的温度,自动检测和控制营养液的温度,并将温度数据反馈给主程序; *在出现营养液的温度、流量和流速异常时,发出声、光报警信号; *使用LCD显示各种数据,随时查看已经输入营养液的数量、温度、流量和流速; *营养泵主要由220VAC供电,同时备有应急充电电池,一次充电可以连续运行12小时以上,以备医院紧急停时使用。 1.2 系统的硬件描述 本营养泵的电路原理框图如图1所示。
(凹丫丫范文网fanwen.oyaya.net收集整理)
系统的主控CPU采用Philips公司的89C51RD2,实现系统的多任务控制;LCD采用北京青云的LCM12232B液晶模块,显示液体的控制参数;控制温度的DAC采用TI公司的TLC5615,使营养液温度误差达到0.1℃以内;电池容量和温度的反馈值均为模拟电压,采用A/D,转换后,送入CPU;A/D转换器使用的是TI公司的TLC1543;应急电池充电电路,采用Linear公司的LTC4006,充电电压为12.6V,电池容量为4000mAh;营养液流量反馈,采用红外线对管,直接由CPU记数;营养泵电机使用直流电动机,采用控制电机运行和停止时间的方法对转速进行闭环控制,以达到控制液体流量的目的。 2 Small RTOS51简介 Small RTOS51是一个专门为51系列单片机设计的嵌入式实时操作内核,使用Keil编译器可以直接使用其代码,它有如下特点。 ①公开源代码。只要遵循许可协议,任何人可以免费获得源泉代码,便于用户的二次开发。 ②可移植性。用户可以把与CPU有关的控制指令压缩到最小,把大部分精力放在CPU的控制程序上。可以使用ANSI C编写应用程序,不仅简化了编程手段,而且便于程序移植。 ③可固化性。Small RTOS51为嵌入式系统设计,可以嵌入到产品中,成为产品的一部分。 ④占先式运行。Small RTOS51可以管理16个用户任务,每个任务可以设置不同的优先级。Small RTOS51总是运行优先级最高的任务。 ⑤中断管理。采用中断管理方式,当有更高级的中断申请时,将目前正在执行的任务挂起。如果优先级更高的任务被中断唤醒,则高优先级的任务在中断嵌套结束后立刻执行。中断嵌套层数可达255层。如果需要,还可以禁止中断的嵌套管理。 ⑥RAM需求小。SmallRTOS51为小RAM的系统设计,因而对RAM的需求只有几百字节,相应的系统服务也少。 3 系统的软件实现 按照系统所要实现的功能,将整个系统划分为几个并行的任务,占先式操作内核对任务的调度是按照任务优先权的高低进行。本文中,将系统划分为9个任务,按其优先级从高到低的顺序排列依次是:报警任务、温控任务、按键输入任务、主控制任务、电机运行任务、流量控制任务、记时任务、液晶显示任务和电池电量检测任务。系统上电以后进入主程序,首先对系统进行自检并任务,启动9个程,此时系统的运行就由Small RTOS51来接管。 3.1 报警任务 由于本文所述的营养泵,主要应用在危重病人的看护中,所以将报警任务在放在最重要的位置。报警程序由一个全局变量setbaojing来控制,其不断检测温控程序、流量控制程序和电池电量检测程序的输出值。当上述程序出现故障报警信号时, 《基于Small RTOS51的肠营养液输液系统》
本文链接地址:http://www.oyaya.net/fanwen/view/161166.html
摘要:介绍一种基于Small RTOS51嵌入式操作系统的医疗仪器——智能型肠营养液输液泵。首先介绍系统的功能及硬件组成,然后重点介绍如何利用Small RTOS51来设计系统软件。最后,给出应用Small RTOS51嵌入式操作系统制造的智能型肠营养液输液泵的试验数据。 关键词:Small RTOS51实时操作系统 肠营养液泵 嵌入式操作系统 引言 随着各种电子系统在各个领域中应用的不断深入,对电子系统本身的要求也越来越高,尤其对于控制系统软件设计的可靠性、实时响应等各个方面的性能有了更严格的要求。单片机的程序设计不再是前后台的运行模式,而是采用多任务实时操作系统的设计思想。由于使用嵌入式操作系统,可以将具体应用分解成多个任务,简化了应用系统软件的设计,使控制系统的实时性得到保证,使其达到理想状态。良好的多任务设计,还有助于提高系统的稳定性和可靠性。 目前,国内应用最多的是以51系列单片机为主的8位单片机。在51系列单片机系统中,可以进行移植的嵌入式操作系统为数不多。其中,Keil自带的RTX51没有源代码,使用起来很不方便;uC/OSII虽然有源代码,也有移植成的例子,但是,它对于51系列单片机系统的资源占用过大,需要外扩RAM,而且要保证每个函数的可重入性,使用起来比较勉强。Small RTOS51是专门为小RAM系统设计的占先式内核,占用资源少、实时性好,应用在本系统上非常合适。 1 系统功能及硬件描述 1.1 系统的功能描述 对于处于昏迷状态或食道进行手术的病人,需要一种按时、按量对病人进行肠营养液输入的智能型肠营养液输液泵,以达到维持病人生命的目的。本文介绍的智能型肠营养输液泵(以下简称营养泵)主要实现以下功能: *根据要求,可以设定输入营养液的总量、流速、温度等参数,并且在运行过程中可以任意修改; *根据指令,自动检测和控制营养液的流量和流速,并将数据反馈给主程序; *根据设定营养液的温度,自动检测和控制营养液的温度,并将温度数据反馈给主程序; *在出现营养液的温度、流量和流速异常时,发出声、光报警信号; *使用LCD显示各种数据,随时查看已经输入营养液的数量、温度、流量和流速; *营养泵主要由220VAC供电,同时备有应急充电电池,一次充电可以连续运行12小时以上,以备医院紧急停时使用。 1.2 系统的硬件描述 本营养泵的电路原理框图如图1所示。
(凹丫丫范文网fanwen.oyaya.net收集整理)
系统的主控CPU采用Philips公司的89C51RD2,实现系统的多任务控制;LCD采用北京青云的LCM12232B液晶模块,显示液体的控制参数;控制温度的DAC采用TI公司的TLC5615,使营养液温度误差达到0.1℃以内;电池容量和温度的反馈值均为模拟电压,采用A/D,转换后,送入CPU;A/D转换器使用的是TI公司的TLC1543;应急电池充电电路,采用Linear公司的LTC4006,充电电压为12.6V,电池容量为4000mAh;营养液流量反馈,采用红外线对管,直接由CPU记数;营养泵电机使用直流电动机,采用控制电机运行和停止时间的方法对转速进行闭环控制,以达到控制液体流量的目的。 2 Small RTOS51简介 Small RTOS51是一个专门为51系列单片机设计的嵌入式实时操作内核,使用Keil编译器可以直接使用其代码,它有如下特点。 ①公开源代码。只要遵循许可协议,任何人可以免费获得源泉代码,便于用户的二次开发。 ②可移植性。用户可以把与CPU有关的控制指令压缩到最小,把大部分精力放在CPU的控制程序上。可以使用ANSI C编写应用程序,不仅简化了编程手段,而且便于程序移植。 ③可固化性。Small RTOS51为嵌入式系统设计,可以嵌入到产品中,成为产品的一部分。 ④占先式运行。Small RTOS51可以管理16个用户任务,每个任务可以设置不同的优先级。Small RTOS51总是运行优先级最高的任务。 ⑤中断管理。采用中断管理方式,当有更高级的中断申请时,将目前正在执行的任务挂起。如果优先级更高的任务被中断唤醒,则高优先级的任务在中断嵌套结束后立刻执行。中断嵌套层数可达255层。如果需要,还可以禁止中断的嵌套管理。 ⑥RAM需求小。SmallRTOS51为小RAM的系统设计,因而对RAM的需求只有几百字节,相应的系统服务也少。 3 系统的软件实现 按照系统所要实现的功能,将整个系统划分为几个并行的任务,占先式操作内核对任务的调度是按照任务优先权的高低进行。本文中,将系统划分为9个任务,按其优先级从高到低的顺序排列依次是:报警任务、温控任务、按键输入任务、主控制任务、电机运行任务、流量控制任务、记时任务、液晶显示任务和电池电量检测任务。系统上电以后进入主程序,首先对系统进行自检并任务,启动9个程,此时系统的运行就由Small RTOS51来接管。 3.1 报警任务 由于本文所述的营养泵,主要应用在危重病人的看护中,所以将报警任务在放在最重要的位置。报警程序由一个全局变量setbaojing来控制,其不断检测温控程序、流量控制程序和电池电量检测程序的输出值。当上述程序出现故障报警信号时, 《基于Small RTOS51的肠营养液输液系统》