基于单片机80C196KB的某医用灭菌器控制系统开发
时间:09-10-14 点击:
采用80C196KB单片机为该厂设计灭菌控制系统,消除原有系统的缺陷并相应增加一些功能,相比51系列单片机,96系列片上资源更丰富,设计系统相对容易。
1、灭菌器控制分析
该灭菌器主要进行包裹类、器械类、乳胶类、液体类及其它类五项进行灭菌,其工艺大体相同,不同之处可由程序控制。通过其工作原理(图1)可知,根据里外锅的温度和压力是否达到规定值而进行各种动作控制。
模拟输入量共4个:外锅温度TW,外锅压力PW,里锅温度TL,里锅压力PL;控制输出量共16个:外锅进汽阀开关IW ,外锅排汽阀开关OW,里锅进汽阀开关IL,里锅排汽阀开关OL,真空阀开关ZK,干燥空气阀开关GZ,油泵继电器通断YB,真空泵继电器通断ZB,电磁液压阀(高压阀GF、齿条阀CF、门闩阀MF),信号指示(电源指示PowerL、总电源指示PowerZ、故障指示ERR、蜂鸣报警ALarm)。
图1
由上图可见灭菌器的主体为一带有夹套及密封门的高压容器, 配有真空泵、真空阀、蒸汽阀等控制器件及温度、压力传感器, 工作过程如图2所示。
图2
2、控制系统硬件结构
控制系统硬件结构如下图3所示:
图3 硬件电路简图
该控制系统硬件电路主要由数据采集、控制量输出、时钟模块、和人机界面的硬件部分等组成。
灭菌室实际温度和压力值由半导体集成温度传感器AD590JH和集成压力传感器MPX5500D测量, 采集的2路温度信号和2路压力信号由P0.0~P0.3送入80C196CKB芯片。在80C196CKB中,有一个8通道的10位A/D转换器,适用于多路数据采集系统。一次A/D转换需88个状态周期(采用12MHz晶振时为22μs)。其优点是在满足工艺要求的情况下极大地简化了硬件电路,有益于电路的可靠性。
80C196CKB里的数字量经数字滤波、标度变换后一方面通过LCD显示, 另一方面与设定进行比较, 得到偏差E 和偏差变化率EC , 为后续控制提供依据。采用并行输出接口电路8255A来实现近20路开关控制量的输出控制。温度控制是由调节蒸汽阀门的开口来实现, 控制量经D/ A 转换为模拟量输出, 功率放大后控制蒸汽阀的开口。用户通过键盘设定灭菌温度、时间和脉动真空次数, 满足各种消毒要求.
采用DS12887并行时钟模块。
人机界面主要包括键盘、显示和微型打印机接口电路。键盘采用软键盘形式,由程序处理来实现键码的识别、去抖动和确认;通过一块8255A实现了键盘和打印机的硬件接口。显示器采用内置T6963C控制器的LCD显示模块(和CPU以直接方式连接),用以动态显示温度、压力、时间和操作提示等。打印机用于打印相关的运行工艺参数。用户界面在软件上的实现是由分散而不是集中的软件模块来实现的
本系统所有器件均采用单一+5V电源供电,由于实际应用时,数据采集时信号容易受到干扰,因此在信号输入输出接点处采取光耦隔离电路,并采取屏蔽电阻等措施保证系统的稳定。
3.软件设计
本系统功能很多, 为了便于设计和维护, 采用自顶向下逐步细化的结构化模块设计方法, 将具有独立功能的子程序都设为子程序模块,相关的功能均由相应的功能子程序实现。主程序由初始化、灭菌类别选择和相关显示、参数比较、执行机构输出控制等组成,其核心是温度和压力参数的比较和相应的输出控制;时间的动态显示由定时器1溢出中断处理程序执行;4个通道的温度、压力数据采集处理和动态显示由A/D转换结束中断处理程序完成。由于显示程序比较大,放在中断处理程序中运行使背景程序简洁,有利于软件运行的可靠性。程序流程如图4所示。
图4
程序运行的基本过程是:初始化后启动A/D转换以采集温度、压力信号,经处理后,这些数据和用户设定的运行参数比较,然后决定系统执行机构的不同动作以满足运行参数被控制在工艺要求的范围内。