你的位置:EETOP 赛灵思(Xilinx) 社区 >> >> 全部 >> 详细内容

基于FPGA的智能变送器的设计

发布者:jackzhang 时间:2011-07-23 22:07:00

摘要:根据工业应用的实际需要以及网络通信发展的功能要求,提出了基于FPGA智能变送器控制系统的总体方案,设计了以XILINX公司的Spartan3系列XC3S4005PO208C可编程逻辑器件为主控制器、DM9000A为以太网通信接口、SJA1000为CAN控制器的硬件系统,并给出了系统软件流程图,重点论述了数据采集和数据模拟输出控制电路的FPGA实现,结合ISE10.1设计软件给出了A/D、D/A的仿真结果。
关键词:FPGA;智能变送器;数据采集;可编程逻辑器件

    在工业自动化控制系统中,过程参数压力、差压、绝对压力、流量等工艺参数均要严格控制,而这类参数的测量与监控大多使用变送器。变送器是玉业过程重要的基础自动化设备之一,是工业过程自动控制中应用最广、使用最多的一种现场仪表。随着高参数、大容量设备的增加和过程工艺的复杂化,变送器用量不断增多。
    随着工业自动化控制技术的发展,自控水平越来越高,对过程参数控制精度要求越来越严,要求变送器表不仅精度高,而且要功能多、稳定可靠、能准确传送过程参数(压力、差压、绝压、流量)、抗干扰能力强、使用维护简单,并能与控制器、执行器等设备组成功能强大的控制系统,实现通讯和过程的自动控制。所以,过去的变送器由于受测量原理和通讯所限,很难实现这种高精度控制要求,因此,自然而然地产生了原理先进具有通讯功能的智能变送器。这类先进的智能变送器集现代科技与一身,是微电子技术、精密机械加工技术、计算机技术和现代通讯技术完美结合的产物,能实现过程控制的多种要求,推动了整个自控技术的向前发展。先进的智能变送器是工业过程控制技术发展的需要,也是工艺过程实现高精度控制的必须,具有很好的市场前景。
    本文根据工业应用的实际需要以及网络通信发展的功能要求,提出了基于FPGA智能变送器控制系统的总体方案,硬件系统设计、软件设计。该设计实现了系统MCU主控模块、数据采集模块、电源控制模块、数据处理模块、数据通信模块等硬件电路,并给出了系统软件流程图,重点论述了数据采集和数据模拟输出控制电路的FPGA实现,详细阐述了系统各模块电路的组成原理和实现方法,给出了整个电路系统的原理图,并制作了印刷电路板。结合XILINX公司的ISE10.1设计软件给出了模/数转换、数/模转换的仿真结果,验证了系统功能。

1 智能变送器的总体设计
    本智能变送器由前端信号调理电路、高速A/D采样电路、数字信号处理电路、模拟输出电路和数字输出电路组成。如图1所示。

d.JPG


    分析不同类型的传感器,其输出信号可分为电流信号、电压信号和电荷信号3大类,相应地设计了3种信号调理电路。以大型设备振动监测项目为例,县体的传感器有加速度、速度和位移传感器。选择不同的前端信号调理电路,变成统一规格的电压信号供后面的A/D采样。
    A/D采样部分对前端电路的输出电压信号进行采样。A/D采样芯片采用ADI公司的AD7264,AD7264是双通道同步采样、14-bit、高速、低功耗、逐次逼近型模数转换器,采用5V单电源供电,采样速率高达1 MSPS。A/D采样电路与前端信号调理电路用同一隔离电源供电,与后级数字信号处理电路隔离。AD7264的数据接口为串行接口,便于隔离处理。
    数字信号处理电路选择带有CPU软核的FPGA。FPGA是智能式变送器的核心,它不但能对采样数据进行计算、存储和数据处理,还可以通过反馈回路对传感器进行调节。在整个系统中,FPGA主要实现对系统的控制和数据的预处理。
    智能式变送器有两种输出方式:模拟输出和数字输出。数字输出将处理后的信号直接输出,通过CAN接口、TCP/IP接口传给上位机。模拟输出通过DAC芯片将信号转换成标准电压电流信号输出。

2 系统硬件设计与实现
    智能变送器具有采集、处理、指示、通讯等功能,其硬件设计围绕功能进行。整个智能变送器单元根据所完成的功能分为以下几个主要功能模块:信号采集模块(传感器放大电路)、信号转换模块(模/数转换和数/模转换电路)、FPGA控制模块、通信模块(以太网和CAN总线通信)以及为整个系统提供电源的电路部分等。其中FPGA系统为整个控制器单元的核心,是变送器实现数字智能化的标志。

e.JPG


    智能变送器的硬件总体结构框图如图2所示。变送器工作时,由传感器把被测量转变为电信号,然后将信号作A/D转换,把模拟信号变换成数字信号,送入到FPGA(XC3S4005PQ205)控制模块,FIGA通过FIR滤波器核对信号进行滤波,并通过查表法对信号进行自动补偿,然后根据实际需要。经数/模转换后将数据传给下级电路,同时也可能通过以太网或CAN总线传给局域网,实现智能变送功能。系统PCB板实物图如图3所示。

a.JPG



3 系统软件设计与仿真
    该系统以XILINX公司的XC3S4005PQ208C作为中央处理器,整个系统主要包括初始状态(Initialization)、数据采集状态(Data_Sample)、数据处理状态(Data_Processing)、以太网传输状态(Enet_Transfers)、CAN总线传输状态(CAN_Transfers)、和模拟输出状态(Analog_ Transfers)等6种状态,因此,可以利用有限状态机的设计方案来实现。其状态转换图如图4所示,通过开发工具ISE10.1对各个模块的VHDL源程序及顶层电路进行编译、逻辑综合,电路的纠错、验证、自动布局布线及仿真等各种测试,最终将设计编译的数据下载到芯片中即可。

f.JPG


    初始状态:实现系统初始化;数据采集状态:完成数据采集过程;数据处理状态:对采集的信号进行一系列的滤波处理,非线性校正等;以太网传输状态,CAN总线传输状态:根据实际需要将信号数字输出;模拟输出状态:进行数模转换,输出标准的电压电流信号。
3.1 数据采集的FPGA设计
    数据采集是工业测量和控制系统中的重要部分,它是测控现场的模拟信号源与上位机之间的接口,其任务是采集现场连续变化的被测信号。对数字系统来说,数据采集主要由传感器放大电路和A/D转换电路构成,由硬件电路可见,系统通过AD7264模/数转换器来实现模/数转换。AD7264内含6个寄存器,分别是A/D转换器的结果寄存器、控制寄存器、A/D转换器A和B的内部失调寄存器、A/D转换器A和B通道的外部增益寄存器。由于XC3S4005PQ208C和AD7264都兼容SPI接口,两者的编程只需按照时序图进行即可。AD7264与FPGA的接口主要包括PD0数据输入选择端:DoutA(DoutB)两路数据输出端;OUTa(OUTb)两路数据输入端;CoutA(CoutB、CoutC、CoutD)比较器输出;G3(G2、G1、G0)四路增益控制输入信号。增益由控制寄存器的低四位控制;ADSCLK时钟信号;ADCS片选信号,低电平有效。AD7264工作频率为20 MHz,在CS下降沿,跟踪保持器处于保持模式。此时,采样、转换同时被初始化模拟输入。这需要至少19个SCLK周期。第19个SCLK的下降沿到来时。AD7262恢复至跟踪模式,并设置DOUTA、DOUTB为使能。数据流由14位组成,MSB在前。图5为AD7264读寄存器时序仿真图。

b.JPG


3.2 数据输出的FPGA实现
    智能化信号调理器的输出分为数字输出和模拟输出,数字输出通过CAN接口和TCP/IP输出到上位机,或者通过总线方式输出;模拟输出通过DA转换成标准的电压电流信号输出。系统选用ADI公司AD5422数/模转换器来实现数/模转换。AD5422通过数据移位寄存器输入数据,数据在串行时钟输入SCLK的控制下首先作为24位字载入器件MSB中。数据在SCLK的上升沿逐个输入。该24位字在LATCH引脚的上升沿无条件锁存,然后数据继续逐个输入,此时与LATCH的状态无关。图6为AD5422写操作时序仿真图。

c.JPG



4 结束语
    采用XILINX公司的ISE10.1设计软件及MODELSIM软件对系统进行反复调试仿真,给出了试验结果,验证了系统功能。并运用美国PCB公司的608A11作为加速度传感器。对设备的振动进行监测,其模拟输出的测试结果如表1所示。

g.JPG


    最终的调试结果表明,本文所设计的智能变送器器能够稳定的实现温度、压力等变量的变送,并且频率、幅值的调节精度等技术指标均达到了预期的设计要求。

最新课程

  • 深入浅出玩儿转FPGA

    本视频基于Xilinx公司的Artix-7FPGA器件以及各种丰富的入门和进阶外设,提供了一些典型的工程实例,帮助读者从FPGA基础知识、逻辑设计概念

  • 从零开始大战FPGA基础篇

    本课程为“从零开始大战FPGA”系列课程的基础篇。课程通俗易懂、逻辑性强、示例丰富,课程中尤其强调在设计过程中对“时序”和“逻辑”的把控,以及硬件描述语言与硬件电路相对应的“

  • Verilog基础及典型数字

    课程中首先会给大家讲解在企业中一般数字电路从算法到流片这整个过程中会涉及到哪些流程,都分别使用什么工具,以及其中每个流程都分别做了