医用自动洗片机控制器的研制 来源:电子设计信息网 作者: 1 引 言 洗片机是各医院影像科的必需设备。医院影像科每天要冲洗大量的x-射线透射胶片,工作量大,且洗片操作有一定难度,对操作人员专业技术要求高,另外,洗片时化学药液对人体有伤害。因此,目前医院大多采用医用自动洗片机。进口的自动洗片机效果好,但价格昂贵。本文介绍了一种自行研制的由微型机控制的医用自动洗片机控制器,主要介绍其软硬件设计方案,并重点介绍了温度检测模块及cpld(complex programmable logic device)在设计中的应用。 2 系统概述及功能要求 洗片过程主要由显影、定影、冲洗和烘干四部分组成,如图1所示。 胶片先在装有显影药液的显影槽中放置一定时间,再在装有定影药液的定影槽中放置一定时间,接着在冲洗槽中用清水冲洗,最后烘干,洗片过程即完成。四个过程对温度、时间均有要求,且显影、定影过程对药液浓度有要求。 洗片机有四种状态:冷机、预热、洗片和自检。冷机状态即系统上电但不工作;预热状态即机内无胶片但工作区加热到一定温度,当有进片时可迅速升温到洗片温度;洗片状态时进行洗片流程;自检状态时可检查各执行机构是否正常。 控制器实现的主要功能有:(1)控制整个洗片工艺的流程;(2)检测并控制显影、定影、烘干三个工作区的温度,显影、定影的药液量及液面高度,洗片的速度(即胶片在各工作区的时间)及泵与阀;(3)判断进出片及胶片型号;(4)统计各型号胶片的洗片数量,统计药液使用量;(5)机内时钟,定时开、关机;(6)由键盘和液晶显示器组成的人机接口,方便操作,并可实现参数的设置。 3 硬件系统的设计 控制器由主控模块、键盘显示模块及执行机构三大部分组成,如图2所示。 主控模块和键盘显示模块各由一片at89c52单片机控制,两部分之间采用串行通讯。设计采用双cpu,是考虑到执行机构在机箱下部,而主控模块与执行机构之间的距离应尽量小,以提高系统可靠性。液晶显示与键盘模块完成任务较多且功能独立,可单独采用一片cpu,另外,键盘显示模块与主控模块分开,可放在机箱上部,方便操作。 键盘显示模块主要由at89c52单片机、键盘、液晶显示和串行通讯接口等组成。 3.1 主控模块 主控模块包括at89c52单片机、温度检测、胶片检测、温度控制、泵和阀的控制、电机速度控制、串行通讯接口、扩充ram、实时时钟、译码电路和开关电源等模块,主控模块结构如图3所示。 由于控制器要求能对药液使用量、各片型洗片数量进行统计并保存统计数据,需要外扩非易失性存储器。考虑到价格因素,没有采用内含实时时钟的存储器,而是采用了一片nv sram和单独的实时时钟。外扩的存储器采用了集成电路ds1225,其存储容量为64k。时钟电路采用了dallas公司的集成电路芯片 ds12887。ds12887可提供年月日时分秒的计时、定时报警、一个一百年的日历、可编程中断及114字节的非易失性ram。洗片机控制器的温度控制中采用了集成调压模块。 3.2 cpld在设计中的应用 cpld是一种新型的复杂可编程逻辑器件。这种器件具有可编程性和实现方案容易改动的特点。cpld器件的使用大大缩短了产品的设计周期,提高了系统的集成化程度、具可靠性和可扩充性,在电子产品设计中得到了广泛的应用。 设计中cpld采用了xilinx公司的集成芯片xc9572。xc9572内有72个宏单元,可多次编程,支持在线编程。cpld中实现的功能包括:译码;输出控制量、进/出片检测及过温检测的接口;中断控制;地址锁存。 cpld内中断控制的原理图如图4所示。int1接到cpu的外部中断脚int1。主控模块有四个外部中断源:实时时钟中断信号clk_int、过温中断信号ov_tem、进片中断信号pos_in和出片中断信号pos out。当其中任何一个中断源有效时,d触发器被清零,int1为低电平,cpu执行中断程序。在中断程序中,cpu通过读int ce 对应的i/o地址单元的数据辨认出相应的中断源,执行对应的处理。其中,int_是读中断源的使能信号,int_ce为低电平时,读中断源,同时d触发器被置位,int1恢复高电平。 3.3 温度检测模块 温度检测电路如图5所示。温度传感器采用ad590,工作范围是-55℃~+155℃,其线性度良好,且有恒流传输特性,便于远距离传送。ad590 的输出电流与绝对温度成正比,供电电源为+4v~+30v时,绝对温度每上升1k,输出电流上升1μa,电流变化范围很小,所以接一个9.8kω电阻及 511ω的可调电阻,增大电流变换范围,以满足lm324运算放大器的要求。
ad590的输出信号经第一级放大器lm324将电流信号变换为反相的电压信号,其中,510ω的可调电阻rw1用来调整电流-电压变换的斜率。信号经第二级放大器放大为稳定的电压信号,可调电阻rw2起调零功能。vref=+5v为参考电压,由电源模块lm317给出。 根据ad590特性,温度为绝对温度xk时,ad590的输出电流为xμa。令第一级放大器的输出电压为v1,第二级放大器的输出电压为v0,则: 根据环境温度、洗片机各温区工作温度要求以及adc0809输入电压范围要求,调整rw1和rw2。调整时我们按照变换率为35mv/℃,通过调整rw1调整v0的斜率,再调整rw2以满足调零要求。 adc0809是单片、cmos、逐次比较、8位模/数变换器。片内包含8位模/数变换器、8通道多路转换器与微控制器兼容的控制逻辑。adc转换位的选择应充分保证其分辨率高于系统的精度要求,且有一定的裕量,从而满足其它环节特别是传感器元件的非线性要求。 adc0809的转换精度为±0.4%,转换时间为128μs。adc0809将第二级放大器输出的模拟量变换为数字量,接到系统的数据总线,供cpu读入。 4 软件系统的设计 软 件系统分为两大部分,洗片主控模块与键盘显示模块,两部分之间根据自定义的通讯协议通讯。软件设计时采用模块化设计,主控部分如图6所示,由初始化、串行通讯、时钟管理、数据存储、输入扫描、进片检测、出片检测、输出控制、中断等模块组成,由主程序调用各子模块,负责洗片流程控制。为了提高系统可靠性,主程序采用循环执行的方式。 输出控制模块包括温度控制、速度控制、冲洗控制、补液控制及其它开关量控制。温度控制模块根据检测到的三个工作区的实际温度与设定温度之差,查温度控制表,采用差值法得到输出控制量,其中温度控制表事先由实验测得,固化在单片机中。洗片电机速度分为四档,根据设定值查表得输出控制量。 5 提高系统可靠性的措施 由于医院对洗片质量及可靠性要求非常高,洗片机本身价格昂贵,且运行时间长,我们在系统设计时考虑了可靠性问题。首先,机器设计有自检功能,普通操作人员可以自行检查各执行机构是否正常。印刷电路板的设计也考虑到抗干扰措施,如电源滤波、地线处理等,以提高电路板的可靠性。另外,系统中有看门狗电路,在程序跑飞时系统复位。在软件方面,采用主程序循环执行的方式,每次循环对输出口刷新、对输入口读入,这样,当程序在某次循环中出错时,下次循环时可恢复正常。 6 结束语 该医用自动洗片机控制器能满足医院x光片自动洗片的要求,减少了洗片工作量,提高了洗片的质量和效率。设计中考虑到了系统的可靠性要求,在硬件和软件设计中均采取措施提高可靠性。同时系统具有一定的灵活性和可扩充性。 参考文献 1 丁元杰主编.单片微机原理及应用.北京:机械工业出版 |