APP下载

基于单片机的空气消毒机紫外线灯累计工作时间优化管理系统的设计

2022-05-26林广富

医疗装备 2022年9期
关键词:数码管紫外线时钟

林广富

惠州市中心人民医院医学工程部 (广东 惠州 516032)

肯格王YKX-B-1000型动态空气消毒机采用紫外线循环风消毒,可有效杀灭进入消毒器内的细菌、真菌、芽孢、病毒等微生物。其工作原理为通过启动动态空气消毒机的卷动式循环风机,位于下方的进风口吸入环境中被污染的空气(未消毒),经过活性炭过滤器和紫外线—光触媒系统后,伴随负离子清新空气(已消毒)从机器顶部的出风口排出到环境中,最终达到消毒和净化环境中空气的目的[1]。该型号空气消毒机设置了备用紫外线灯启动装置,主管失效备管自动支援,采用超强度、长寿命、高标准C 波段(波长253.7 nm)无臭氧紫外线循环风杀菌消毒。其中,紫外线可通过破坏微生物细胞内的核糖核酸、脱氧核糖核酸的分子结构使其失去转化能力而达到杀菌消毒的目的[2]。根据某厂家提供的数据,紫外线灯的使用寿命长达5 000 h[3]。

以肯格王YKX-B-1000型动态空气消毒机为例,该设备共有8组紫外线灯,假设N(0≤N ≤8)组发生了故障,则需要更换N 组紫外线灯,另外的8-N组未更换,因目前的空气消毒机的累计工作时间是指设备消毒的累计工作时间,只能反映出整体的运行时间,而不能单独反映每组紫外线灯的实际累计工作时间,但实际情况是新更换的紫外线灯与旧的紫外线灯的累计工作时间并不一致,即累计工作时间以任意一种作为参考均无法准确反映真实情况,从而对空气消毒机紫外线灯的管理造成了困扰。基于此,本研究基于单片机,拟设计一套空气消毒机紫外线灯累计工作时间的优化管理系统,用以单独计算并显示各个紫外线灯的累计工作时间,以解决两个问题,一是以新紫外线灯工作时间为准而导致的杀菌消毒效果差,二是以旧紫外线灯工作时间为准而导致的成本浪费。

1 系统总体设计

本研究设计的肯格王空气消毒机紫外线灯累计工作时间优化管理系统以STC89C52RC 单片机最小系统为核心,由主控制模块、时钟模块、显示模块、输入模块、存储模块组成,以便于临床管理为设计理念,根据实际需求设计而成。

现拟设计针对4组紫外线灯累计工作时间的优化管理系统。每组的操作界面只有1个按键(R 键)和4个数码管,每组紫外线灯与1个时钟芯片DS1302对应,在机器端接220 V 转5 V 电压给单片机系统供电。当紫外线灯工作时,通电信号传输至单片机,开始计数,计时格式是HHHH;当紫外线灯不工作时(包括备用和灯管损坏的情况),DS1302自动暂停计数,保持原有数值且显示于数码管上;若灯管发生了损坏,则更换新灯管后,需手动按复位按键(R1-R4键);关机重启后,数码管上可显示关机前的累计时间。系统总体设计的protues 仿真电路图[4]见图1。

2 系统硬件设计

2.1 主控制模块

STC89C52RC 单片机使用经典的MCS-51作为内核,功能比传统的51单片机齐全,具有低功耗、高性能的优点,可为众多嵌入式控制应用系统提供灵活、智能、有效的解决方案[5]。因此,本设计选用STC89C52RC 单片机作为控制核心,负责接收按键及DS1302的信号、发送信号至数码管、存储信号等。

2.2 时钟模块

本系统采用4个DS1302用以单独计算紫外线灯的累计工作时间。DS1302是慢速充电时钟芯片,包括实时时钟/日历和31字节的静态随机存储器(random access memory,RAM)。该芯片经过1个简单的串行接口与微处理器通信,通过实时时钟/日历提供秒、分、时、日、周、月和年等信息。对于小于31 d 的月份,月末的日期自动进行调整,此外,其还具有闰年校正的功能[6]。同步串行通信简化了DS1302与微处理器的通信,与时钟/RAM 的通信仅需3根线:(1)RST(复位),分别接单片机P2.1,P2.4,P3.1,P3.4口;(2)I/O(数据线),分别接单片机P2.2,P2.5,P3.2,P3.5口;(3)SCLK(串行时钟),分别接单片机P2.3,P2.6,P3.3,P3.6口。

2.3 显示模块

本系统采用数码管作为显示模块以显示紫外线灯累计工作时间信息。74HC139含有两个单独的2线—4线译码器,74HC138译码器可接受3位二进制加权地址输入,P0口作为数码管段选信号,P1^7为74HC139输入端,将输入端A、B 短接,使输出只有Y0、Y3;P1^6、P1^5、P1^4接到两个74HC138的A、B、C信号输入端,Y0、Y3分别接到接在74HC138的使能端E1,用于选通74HC138,从而控制4组(共16个)数码管,显示出实时的计时。

2.4 输入模块

按键R1、R2、R3、R4用于重置对应DS1302的数值。

3 系统软件设计

系统软件程序由声明语句、主程序、DS1302写入读取函数、BCD 进制转换10进制处理函数、E2PROM 写入读取函数、数码管显示函数、扫描函数等函数组成。断电重启后,E2PROM 读取函数将存储在E2PROM 的数据读出来,然后写入DS1302,再通过DS1302读取函数将DS1302读取出来,用处理函数进行处理数据;然后通过扫描STOP0~STOP3 4个端口,判断是否通电,如果通电则读取时钟芯片DS1302,再通过函数将BCD 码转成10进制数,通过变量month、day、hour 进行累计,得到累计工作时间,计时格式是HHHH,用4个数码管显示累计小时数,可以显示的范围为0000~9999;最后通过显示函数将结果显示在数码管上,并且将读出的结果用E2PROM 写入函数写到E2PROM 内。如果断电则不继续读取DS1032,而显示断电前的累计数。通过扫描函数不断扫描R1-R4以判断是否需要重置对应DS1302的数值。DS1302初始数据为2000年1周1月1日0时0分0秒。

如图2所示,其程序设计流程为:设备开机后,第一步,单片机先读取E2PROM内存储的数据,并写入DS1302;第二步,读取DS1302的数据;第三步,检测灯管是否通电;第四步,若检测到通电,则对数据进行处理,并存入E2PROM,若未检测到通电,则不作处理;第五步,显示实际累计时间;第六步,检测R1-R4状态,若检测到被按下,则将对应计时器复位再转到第三步,否则直接转到第三步;开机后一直循环以上步骤。

4 系统测试结果

系统的实际测试结果见图3。开机后,4组数码管能正常计数且显示,当灯管亮时,工作1 h后累计1 h,当灯管暗时,保持当前数值;然后,关机后再通电,能够显示关机前的数值;按R1-R4键,4组数码管均可正常复位(注:“亮亮亮暗”代表第1、2、3组紫外线灯亮,第4组紫外线灯暗;“亮亮暗亮”代表第1、2、4组紫外线灯亮,第3组紫外线灯暗;以此类推)。

5 结论

本研究设计的基于单片机的空气消毒机紫外线灯累计工作时间优化管理系统能单独对4组紫外线进行计时,即可单独反映各组紫外线灯的使用情况,因此,其可协助相关人员对空气消毒机进行优化管理,以保障紫外线灯的杀菌消毒效果,并最大限度地节省成本,同时,其还可根据机器紫外线灯的实际数量进行扩展设计,满足多元化的需求。

猜你喜欢

数码管紫外线时钟
紫外线指数,提醒你保护皮肤
看不见的光——红外线与紫外线
别样的“时钟”
基于51单片机的分数计数器设计
微课教学设计之“数码管动态显示”
古代的时钟
让人又爱又恨的紫外线
Arduino编程
MC9S08FL16单片机数码管静态显示分析
跟踪导练(五)6