摘要:介绍了远距离测温器的结构组成和工作原理,设计了基于FPGA的远距离测温器数控系统的数据采集与控制系统,使用Altera公司的Cyclonell系列的FPGA实现了包括数据采集、数据通信等控制功能,着重叙述了硬件与软件的实现方法。该数控系统具有测量精度高,低功耗等特点。
关键词:远距离测温;FPGA;数据采集与控制系统;NiosⅡ
引言
远距离测温器是一种被动式的温度遥感器,可用于远距离探测物体的温度,在科学研究和工业生产中发挥了重要作用。由于在使用时人们对测温器的测量范围、灵敏度要求很高,同时由于当今遥感仪器的设计越来越趋于低功耗高密度及小型化,因此,要求测温器的数据处理与控制系统具有高可靠性、高分辨率、实时性、体积小等特点。由于FPGA的功能强大,逻辑速度快,可以用多种接口电平与外界通信,可以方便的更新程序以实现多种功能,所以本文采用Altera公司的CycloneⅡ系列的FPGA为核心进行远距离测温器的数控系统设计,实现了系统的多功能和小型化。
1 系统结构
远距离测温器的结构框图如图1所示。由红外线探测头、光电转换单元、放大电路、数据采集电路和数据处理与控制系统等功能模块组成。红外探测头用于搜集物体发射出的红外光线,将有用信号传输至较远且适合人 *** 作的地方,最后使用数据处理和控制系统进行控制。
数据处理与控制系统接收计算机传输的指令,控制系统运行。系统通电后,红外接收天线接收的光信号模拟量经过远距离传输,信号放大后经过A/D模数转换后再送入数据处理和控制系统,由数据处理与控制系统进行数据采集和存储、与计算机的数据通信、工作状态控制。数据处理与控制系统在远距离测温器中处于重要的位置。
数据采集、数据处理与控制系统电路由FPGA及其外围电路、数据采集系统、电平转换电路、总线接口电路等部分组成,如图2所示。
FPGA根据系统本身的时序和计算机送入的控制指令,控制数据采集电路完成数据的采集。同时,FPGA内部的可配置软处理核NiosⅡ系统将根据计算机中提供的校准值来修正由前端模拟电路引起的偏差,并由此生成实际误差很小的曲线方程。校准工作完毕后,整个系统既可脱离计算机方便地用于远距离的温度测量,也可以用于联机对物体温度的实时检测,采集到的大量数据提供给计算机作分析用。
数据采集电路采用AD公司的模数转换器AD7675,该芯片只需要提供+5 V工作电源,典型功耗为15 mW,芯片转换速度为100 KSPS,可选并行或串行采样数据输出,对外可选+5 V或+3.3 V接口电平。被测模拟信号电压输入范围为-2.5~+2.5 V,可以做到最高16位不失码。
2 硬件电路设计
2.1 电源控制电路
由于整个电路系统涉及模拟和数字部分多种芯片的运作,A/D采样芯片和FPGA芯片均需要两种以上的电源供电,所以选取合适的电压转换器非常重要。电源控制电路选用Linear公司的线形电源模块来提供A/D芯片所需要的+3.3V,+2.5V电压和FPGA所需要的+3.3V和+1.2V电压,为了提高信号质量,模拟和数字部分的+3.3 V电压分别由不同的电源转换模块提供。
2.2 数据采集电路
数据采集电路主要由AD7675组成,由于其输出I/O部分采用+3.3 V供电,故其所有的数据输出管脚和输入控制信号不需要进行电平转换,可以直接与FPGA的I/O管脚相连。A/D芯片的转换速率为100KSPS,选择16 b双极性补码输出,最高位表示符号位。硬件电路如图3所示。采集到的数据送入FPGA的寄存器,再传送到计算机中,供数据分析用。
AD7675的模拟信号输入部分选用AD公司的AD8021运算放大器实现模拟输入信号的单端到差分信号的转换。电源进入电源管脚前应就近安装钽电容进行滤波,以减小电源上的杂波干扰,提高信号质量。AD7675支持并行和串行两种数据输出方式,本系统选择并行16 b补码采样数据输出,与此相关的一些控制信号,如BYTESWAP,OB,SER/PAR需要被置为低电平。而其它RESET和数据输出I/O管脚接入FPGA,由FPGA控制。
2.3 FPGA与计算机接口电路
FPGA通过串行通信接口与外接计算机实现通信。本文选用MAX232实现LVTTL与EIA的电平转换,可方便的完成FPGA与计算机之间的RS 232通信。
2.4 数字控制单元设计
该测温器的软件设计主要分为两个部分,一是FPGA的相关程序设计,其主要功能包括:A/D数据采集控制、串口数据通信控制、LCD的读写控制以及PROM的烧录等;二是计算机中的相关程序,主要功能包括数值运算、标定FPGA和将采集到的数据存储以供分析等。在整个FPGA的设计上,由Altera公司开发的基于SoPC的NiosⅡ处理器及其软件开发包SoPC Builder可以方便地将所需要的IP核、存储器、接口控制器等简单而又快速的集成到FPGA中去,从而缩短设计周期。FPGA内部功能模块如图4所示。
F
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)