基于Small RTOS51的营养液输液系统
任务 按键是实现人机交互的重要设备,要求实时性较高。从系统软件的设计角度,不仅要读出按键的状态,还需要具有对按键的抖动、连击、串键等特殊情况进行处理。系统按键输入任务流程如图2所示,本任务使用消息队列指令KeyReadBuf[16],向主控制程序发送按键的相关信息。 3.4 主控制任务 主控制任务应用SmallRTOS51提供的系统函数OSQPend(KeyTemp,KeyRead Buf,0)来查录按键输入任务提供的信息,一旦发觉KeyReadBuf[16]中有了相关信息,立刻运行输入程序。根据按键的命令,控制电机运行程序、流量控制程序、液晶显示程序的运行及停止,每当有一组按键信息进入消息队列中,本程序就修改一次运行指令。 3.5 电机运行任务 电机运行任务一直处于等待的状态,当主控制程序给它发关字相应的指令才开始运行。在运行过程中,电机运行任务受到主控制程序和流量控制程序的控制,一旦有停止运行的命令,或流量有异常,就立刻停止电机的运行。 3.6 流量控制任务 液量控制任务主要由CPU来控制输入营养液的流量及流速。正常运行情况下,流量控制程序会向液晶显示程序发送流量及流速的信息,使液晶上显示已经输入营养液的数量、流量及流速。一旦发生异常情况,如流速过快、一段时间营养液没有流动等故障,立刻向电机运行程序发出指令,停止电机的运行,同时将setbaojing置1,使报警程序运行。 3.7 记时任务 记时任务主要是为系统提供一个同步时钟,为系统提供同步运行的基准。 3.8 液晶显示任务 液晶显示任务主要由主控制程序、报警程序、流量控制程序、电池电量检测程序传递到消息队列中的参数。通过运行显示程序,在液晶上显示相关的汉字和字符,本身不向其它任务发送命令。 3.9 电池电量检测任务 一旦发生220VAC市电断电的情况,营养泵会立刻自动切换到内置的锂电池供电,电池可以连续使用12小时以上。电池电量检测程序会自动运行,检测电池的电量。在电量低的情况,电池电量检测程序会发出报警信号,但不会主动停止系统的运行。 4 试验数据 用本文所述的智能肠营养液泵对目前市场上常用的几种营养袋进行实验。 以上实验数据表明,本智能肠营养液泵的输液量精度远远高于目前市场上10%的通用标准,并且对各种品牌的营养液袋都能控制在足够的精度范围内。 结语 在肠营养液泵的设计中,使用了Small TROS51,大大简化了程序设计的难度,增强了系统的可靠性和安全性,满足系统实时性要求。本设计达到了国家标准,并且已经在临库中开始使用.
- 详解基于51单片机的small rtos(1)(11-29)
- Small RTOS的键盘扫描程序(08-30)
- 详解基于51单片机的small rtos(08-10)
- Small RTOS51实现基于单片机的温控器设计(12-08)
- 基于RTOS的嵌入式系统在Nexar中的实现(01-20)
- 在Nexar上实现RTOS51的嵌入式系统方法介绍(03-27)