跟着各种电子体系在各个领域中运用的不断深入,对电子体系自身的要求也越来越高,特别关于操控体系软件规划的可靠性、实时呼应等各个方面的功用有了更严厉的要求。单片机的程序规划不再是前后台的运转形式,而是选用多使命实时操作体系的规划思维。因为运用嵌入式操作体系,能够将详细运用分解成多个使命,简化了运用体系软件的规划,使操控体系的实时性得到确保,使其到达抱负状况。杰出的多使命规划,还有助于进步体系的稳定性和可靠性。
现在,国内运用最多的是以51系列单片机为主的8位单片机。在51系列单片机体系中,能够进行移植的嵌入式操作体系为数不多。其间,Keil自带的RTX51没有源代码,运用起来很不便利;uC/OSII虽然有源代码,也有移植成的比如,可是,它关于51系列单片机体系的资源占用过大,需求外扩RAM,而且要确保每个函数的可重入性,运用起来比较牵强。Small RTOS51是专门为小RAM体系规划的占先式内核,占用资源少、实时性好,运用在本体系上十分适宜。
1 体系功用及硬件描绘
1.1 体系的功用描绘
关于处于昏倒状况或食道进行手术的患者,需求一种准时、按量对患者进行肠养分液输入的智能型肠养分液输液泵,以到达保持患者生命的意图。本文介绍的智能型肠养分输液泵(以下简称养分泵)首要完成以下功用:
依据要求,能够设定输入养分液的总量、流速、温度等参数,而且在运转过程中能够恣意修正;
依据指令,自动检测和操控养分液的流量和流速,并将数据反应给主程序;
依据设定养分液的温度,自动检测和操控养分液的温度,并将温度数据反应给主程序;
在呈现养分液的温度、流量和流速反常时,发作声、光报警信号;
运用LCD显现各种数据,随时检查现已输入养分液的数量、温度、流量和流速;
养分泵首要由220VAC供电,一起备有应急充电电池,一次充电能够接连运转12小时以上,以备医院紧迫停时运用。
1.2 体系的硬件描绘
本养分泵的电路原理框图如图1所示。
体系的主控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来操控,其不断检测温控程序、流量操控程序和电池电量检测程序的输出值。当上述程序呈现毛病报警信号时,setbaojing为1,报警程序立即便蜂鸣器和报警灯作业,并在液晶屏幕上显现呈现毛病的称号,直到有人来铲除毛病后,才能够正常运转。
3.2 温控使命
因为人体关于温度的改变十分灵敏,而肠养分液是直接输入到人的小肠傍边,所以体系对温度的要求十分高,为此,本体系将温控使命放在第二位。先将设定的温度参数输入给CPU,经过PI核算,宣布数字信号,再用TLC5615转化成模仿量,操控加温电路给养分液加温。养分液的实践温度,由温度反应电路转化成电压信号,再经过A/D转化成数字信号反应给CPU,由CPU进行闭环操控。
3.3 操控输入使命
按键是完成人机交互的重要设备,要求实时性较高。从体系软件的规划视点,不只要读出按键的状况,还需求具有对按键的颤动、连击、串键等特殊状况进行处理。体系按键输入使命流程如图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,大大简化了程序规划的难度,增强了体系的可靠性和安全性,满意体系实时性要求。本规划到达了国家规范,而且现已在临库中开端运用。