摘要:一种基于 FPGA的洗片机控制系统的设计,给出了系统的工作原理与设计方案,重点论述了FPGA在系统中应用与具体实现。该系统实现了在0℃"50℃范围内精度0.1℃的测量与控制。相对于传统的单片机系统,本系统具有结构简单、易于升级、抗干扰能力强等特点,能够在恶劣环境下工作,具有非常广阔的市场前景。
洗片机作为一种用于X射线透射胶片和CT胶片的显影、定影、清洗和烘干的仪器,在当今各行业都有着广泛的应用。传统的洗片机由于自动化程度不高,所以对操作人员有严格的技术要求,药液日积月累也会对人体造成一定的伤害,并且社会的发展也对洗片机的精度提出了越来越高的要求,所以新型的高自动化,高精度的洗片机日益成为研究的重点。本文重点介绍了FPGA在这样一种新型洗片机控制系统中的应用。
洗片机工作原理及实现方案
洗片过程主要由显影、定影、冲洗和烘干四部分组成。胶片先后经由滚轴传送至显影及定影箱的药液中,然后再经过冲洗槽由清水冲洗,最后烘干,整个洗片即完成。四个过程对显影、定影温度,胶片传送速度均有严格的要求。
该控制系统主要由FPGA、A/D转换器,温度传感器,光电耦合器,PWM控制器等器件组成。系统上电以后,由PWM控制器来控制电机的转动速度。电机转轴上的码盘带有圆孔,两端装有光电耦合器。电机转动以后,光电耦合器两端就会生成一正弦波信号,信号经过施密特反向触发器后变为一方波,振幅与正弦波相反。同时,温度传感器测量显影箱与定影箱的实际温度,经过A/D转换器将模拟信号转换成数字信号。然后系统将电机转动的速度信号、显影、定影的实际温度信号和拨码盘上的设定温度信号经过5v到3.3v的转化后传送到FPGA进行处理,从而生成系统需要的控制信号。本文重点介绍了FPGA在本系统中的应用。系统的结构如图1所示。
3 FPGA在系统中的应用
3.1 FPGA的性能及特点FPGA即现场可编程门阵列,是在CPLD的基础上发展起来的新型高性能可编程逻辑器件。它一般采用SRAM工艺,也有一些专用器件采用FLASH工艺或反熔丝(Anti-Fuse)工艺等。FPGA集成度很高,其器件密度从数万系统门到数千万系统门不等,可以完成极其复杂的时序与组合逻辑电路功能,适用于高速、高密度的高端数字逻辑电路设计领域。FPGA的基本组成部分有可编程输入/输出单元、基本可编程逻辑单元、嵌入式块RAM、丰富的布线资源、底层嵌入功能单元、内嵌专用硬核等。FPGA还支持多种单端I/O标准接口、系统所需的PCI标准接口、数据速率高达640Mbps的LVDS标准接口等,甚至一些高端产品可以通过DDR寄存器技术支持高达2Gbit/s的数据速率。该器件还可以支持使用低价位的串行配置器件来对该系列器件进行配置;器件内部含有锁相环(PLL),可以用做时钟的倍频、分频以及移相等操作;内部每个逻辑阵列块(LAB)可与多个全局时钟,用于系统的多时钟驱动。FPGA的主要器件供应商有Xilinx、Altera、Lattice、Actel和Atmel等。
3.2FPGA的内部模块设计
FPGA内部包含实际温度的读取、设定温度的读取、实际温度的换算、实际温度与设定温度的比较及加温控制、速度的测量、定时、十进制码与LED显示码的转换、串行口显示等模块。其内部结构原理图如图2所示。
3.2.1 速度测量
速度测量功能由一个脉冲计数器模块和一个定时器模块实现。若电机转速为r转/分钟,电机齿轮直径A,与电机齿轮相连的传动齿轮直径为B,传送胶片的滚轴直径C,电机转动时间为t,码盘圆孔个数n,则胶片的传动速度为v= πrABC/n。在本系统中,2.7毫秒内测的的3位十进制数即为个位加两小数位的胶片速度。例如,2.7毫秒内测得脉冲个数为135,则胶片的行进速度为1.35米/分钟。
3.2.2 温度测量与控制 温度的测量与控制包含显影、定影两路温度,当A/D转换器MC14433转换周期完成以后,MC14433向FPGA发出一高电平脉冲信号。FPGA接收到此信号以后由温度切换模块进行显影、定影温度的切换;同时设定温度读取模块开启拨码盘的移位扫描并读取设定温度值,而实际温度初值读取模块开始读取上一转换周期的模数转换初值,得到一个四位的十进制数。模数转换初值再经过一除法运算模块即得到最终实际温度值。(除数与MC14433的基准电压相关,若MC14433基准电压为xV,则除数n=2/x,本系统中基准电压为0.5V,n=4。)然后由温度比较与加温控制模块将设定温度与实际温度进行比较,若实际温度小于设定温度,则选择此路温度的加温控制。
3.2.3 内码转换与结果显示 得到速度与实际温度的数值后,结果在内码转换模块中转化成LED字型码,然后由显示模块将数据传输到LED面板上。显示模块是由一个移位寄存器构成的串行通讯口,并且生成LED显示所需的移位时钟。
3.3 FPGA设计的仿真
图3是FPGA设计在Quartus中的仿真结果波形图。其中clk是10M有源晶振产生的系统全局时钟,EOC是A/D转换器转换周期结束信号,S_IN是用作设定温度的拨码盘数值,SPEED为测速脉冲,MC14433_D是A/D转换结果的位选信号,MC14433_Q是A/D转换的结果输出。图中设定温度小于实际温度,所以温度控制信号显影(HEATUPXY)、定影(HEATUPDY)处于高电平加热状态。最终结果在移位脉冲的作用下通过串行口输出,即为图中的LED_DATA。
3.4 采用FPGA设计的优势
(1) 超小型化系统
因为 FPGA的可编程特性、内部足够的资源和布线空间,所以相对于传统的“EPROM+计数器”的方法,本系统大幅度减少了硬件电路规模抗。
(2) 抗干扰性能强
所有的数据处理都在 FPGA内部完成,信号受干扰的几率小,再加上其独特的抗干扰设计,大大提高了系统的抗干扰能力。
(3)灵活性好 由于 FPGA的可编程特性,易于实现系统的扩展与升级,而且开发周期短,易于调试。
4 结论
由于洗片机在如今的航空、医疗、工业、军事等行业有着广泛的应用,所以其性能紧密关系着市场的占有率。本系统采用了独特的FPGA技术,实现了数据的高速处理。相对于传统的洗片机控制系统,本系统大幅度提高了温度测量与控制过程中的精度,其控制误差已无限接近于传感器与A/D转换器的综合误差。若采用采用高精度的温度传感器与A/D转换器可以实现系统温度的微小量测量与控制。本系统采用了价格低廉的LM355Z和MC14433作为温度传感器与A/D转换器,实现了0℃"50℃范围内精度0.1℃的测量与控制。
本文作者创新点:实现了超小型系统规模,数据的高速处理处理,支持实时显示,抗干扰能力强,可在恶劣环境下工作。 由于采用FPGA技术的诸多优点,采用该系 |