APP下载

带触摸屏和ARM控制器的压力蒸汽灭菌控制系统设计

2021-02-21廖文涛

机械工程师 2021年2期
关键词:灭菌器人机界面线程

廖文涛

(四川省中西医结合医院,成都610041)

0 引言

压力蒸汽灭菌器是医院的常用医疗设备,该设备在密闭的腔体内用电加热水,产生蒸汽,再利用蒸汽在冷凝时放出的热量,使待灭菌的物品加热,最后经过一段时间的保温从而实现灭菌的目标。根据我国医药行业标准《手提式压力蒸汽灭菌器(YY 0504-2005)》[1],灭菌器的额定工作温度为126 ℃,最大加热时间不超过30 min,工作模式为连续加热。灭菌器的顶盖上有自动放汽阀,当内部压力达到自动放气阀的额定压力时,灭菌器依靠安全阀间歇性放汽来实现恒压和恒温。根据上述行业标准生产的电热式压力蒸汽灭菌器,需要使用者通过机械开关手工操作,往往需要专人值守。另一方面,理想的医用灭菌器,需要针对不同的消毒对象设置不同的灭菌温度[2],如橡胶制品的可承受温度比金属物品可承受的温度低。

为了克服上述缺点,近年来医疗科技工作者对传统的压力蒸汽灭菌器进行了改进,用51系列单片机给压力蒸汽灭菌器增加了控制电路[3],可以采用按键来控制设备的运行参数,可以在字符液晶显示器上显示运行状态,确保压力蒸汽灭菌器可以在无人值守的条件下安全工作。

随着科学技术的发展,触摸屏技术在近10多年的时间,已经成了最为人们所接受的计算机输入和显示方式。本文将触摸屏结合ARM控制器(采用英国ARM公司CPU构架的处理器),做成具有友好的人机交互界面(Human Machine Interface,HMI)的压力蒸汽灭菌器控制系统,通过对灭菌的主要工艺参数(温度和时间)的控制,可对不同器械消毒的需求提供不同的灭菌过程。触摸屏操作方便,降低了对操作人员的培训要求,具有直观的应用体验。

1 系统概述

在众多ARM控制器的生产商中,ST公司的STM32系列CPU是使用最为广泛的一种,原因之一是该公司的CPU有丰富的参考资料,还有免费提供的图形化硬件配置工具STM32CubeMX[4],免费提供的TouchGFX用户图形界面编辑器,兼容IAR、Keil等代码编辑工具,帮助开发人员显著地缩短了控制系统的开发周期。

本文的压力蒸汽灭菌器控制系统选用ARM Cortex-M7核心的STM32F769NIH6芯片作为CPU,使用分辨率为800×480的4 in电容触摸屏(简称LCD-TFT)作为人机界面。触摸屏通过显示串行接口与CPU的显示控制器(LCD-TFT Display Controller,LTDC)连接。使用CPU扩展的外接内存作为显示图形缓冲器。

2 硬件设计

选用STM32F769NIH6芯片,主频为216 MHz,具有32位的内部数据总线矩阵和丰富的外设资源,与本应用相关的资源如下:具有3个12 bit精度的模拟量采样模块(Analog-to-Digital Converter,ADC),每个模块可采样8个通道,CPU总共可以实现采集24通道信号采样;具有159路通用IO口(General-Purpose Input and Output,GPIO);具有LCD-TFT显示控制器(LTDC);具有灵活的外部存储器控制器(Flexible external memory controller,FMC);14个定时器。控制系统的硬件原理如图1所示。

图1 控制系统的硬件原理图

为了最大限度保持原有灭菌器的结构,本文选用3.3 V输入、220 V输出的继电器模块作为驱动模块,使CPU能够驱动灭菌器。STM32F769NIH6芯片的GPIO口使用3.3 V电平标准,所以本文选用3.3 V输入的继电器模块。把继电器串入原灭菌器的220 V供电线路中;拆下原来的手动放汽阀,新制作一个螺纹转接头,转接头的一端连接到灭菌器壳体上,转接头的另外一端连接手动放汽阀,把温度传感器安装到转接头中。经过上述改造后,CPU通过GPIO可以直接驱动继电器模块,实现对灭菌器的控制,通过继电器的开启和关断来实现对灭菌器间歇性加热,使灭菌器保持在设定的恒温状态。

3 软件设计

控制系统软件分为3个部分:主程序、线程1、线程2。其中,主程序负责硬件的初始化,负责线程1和线程2的创建,还负责线程间通信用的消息队列的创建;线程1负责处理触摸屏人机界面,线程2负责处理后台控制逻辑。控制软件流程图如图2所示。

软件的设计过程,分别在3个开发工具中按顺序完成,简述如下:

1)在硬件配置工具STM32CubeMX中,根据配置向导完成显示屏的LTDC显示控制器的设置,完成FMC外置内存控制器的设置,完成连接继电器的GPIO口的配置,完成ADC温度采集的配置、计时周期为1 s的定时器的设置。在STM32CubeMX中还要完成嵌入式实时操作系统的设置,以在应用程序中开启多线程;新建2个线程,线程1负责处理触摸屏人机界面,线程2负责处理后台控制逻辑。

2)用TouchGFX图形界面编辑器制作出如图3所示的触摸屏界面。

3)在代码编辑器IAR workbench中,编辑修改上述两步所生成的程序代码,以实现图2所示的逻辑。用户界面中设定变量(温度和时间),包括“启动”和“停止”按钮的动作,在屏幕刷新的过程中,由线程1通过消息队列传递给线程2;线程2每秒采集一次当前的温度并计算一次累加保温时间,将当前温度和剩余时间通过消息队列传递给线程1,线程1再将收到的值显示在屏幕上。

系统加电后,当用户按下“启动”按键时开始循环工作,直到累计保温时间达到预定时间,或者按下“停止”按键。为了保证温度的采样有较高的精度,负责温度采集的ADC采样模块采集10个值,再对10个值取平均值,作为最终的温度值。为了保证保温时间的累加有较高的精度,定时器以1 s为周期持续定时,当1 s计时结束后,产生中断,又开始新一轮的1 s计时。定时器更新中断触发ADC温度采集和逻辑处理,由于定时器独立于CPU内核运行,不占用CPU的逻辑处理时间,所以可以保证高的计时精度。

图2 控制系统的软件流程图

4 测试结果

图3显示的是系统搭建完成后,触摸屏上显示和输入温度、时间的界面,以及“运行”和“停止”按键的布置。在该界面上通过增、减调节,在上、下限范围内设置温度和时间的预期值。当用户按下“运行”按键后,如果灭菌器内的实际温度低于设定温度,那么CPU控制加热器开启,触摸屏下半部分实时显示当前设备内的实时温度和所剩余的保温时间。灭菌器按图2所示的控制逻辑工作,直到累计保温时间达到预定时间,或者按下“停止”键。

通过对控制系统升级后的压力蒸汽灭菌器的实际使用发现,触摸屏的使用提供了友好的人机界面,操作更直观方便;控制器还大大提高了灭菌器温度控制的稳定性。由于温度和压力波动范围大大缩小,安全阀不再有持续的放汽现象,所以灭菌器对工作环境的噪声污染显著降低。

图3 触摸屏界面

5 结语

使用带触摸屏人机界面的ARM控制系统对传统的压力蒸汽灭菌器进行了升级改造,使灭菌器具有友好的人机界面,同时扩展了灭菌器温度的设定范围,满足了医疗单位对不同医疗物品的消毒需求。而且,新的控制系统的引入,降低了灭菌器的水耗和电耗,减小了灭菌器工作时的噪声。

猜你喜欢

灭菌器人机界面线程
RBI在超期服役脉动真空灭菌器定检中的应用
压力蒸汽灭菌器安装与验证
基于C#线程实验探究
基于国产化环境的线程池模型研究与实现
浅谈linux多线程协作
CBTC系统车载人机界面的设计与实现
基于PLC与人机界面的经编机电子横移控制系统研究
STERRAD NX灭菌器灭菌取消原因的分析及处理
HIRAYAMA HVE-50型医用高压灭菌器“ErL”报警故障维修
CTCS-3级列控车载人机界面的系统设计与实现