微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 硬件工程师文库 > 基于SOPC技术的多通道实时温度采集系统

基于SOPC技术的多通道实时温度采集系统

时间:07-02 来源:互联网 点击:

  温度是表征物体冷热程度的物理量,是工业生产中常见和最基本的参数之一,在生产过程中常常需要对温度进行监控。传统的温度采集系统,通常采用单片机或数字信号处理器DSP作为微控制器,控制模数转换器ADC及其他外围设备的工作;但是,基于单片机或DSP的高速多路温度采集系统都有一定的不足。由于单片机运行的时钟频率较低,并且单片机是基于顺序语言的,各种功能都要靠软件的运行来实现,因此随着程序量的增加,如果程序的健壮性不好,会出现"程序跑飞"和"复位"现象。DSP的运算速度快,处理复杂的乘加运算有一定的优势,但是很难完成外围设备的复杂硬件逻辑控制。因而单片机或DSP很难满足在复杂的工业现场进行多路温度采集时对实时性和同步性的要求。鉴于此,本文介绍一种基于SOPC技术的多通道实时温度采集系统。该系统开发周期短、资源配置灵活、稳定性良好,满足了对温度采集实时性和同步性有较高要求的工业生产领域中的应用。

  1 系统的总体结构

  温度采集系统的硬件主要由温度采集模块、数据存储模块、FPGA逻辑控制模块以及通信模块组成,其总体架构如图1所示。

  

  系统上电后,先由静态存储器EPCS16自动将配置数据载入到FPGA(CycloneII系列的EP2C8Q208C)的SDRAM(HY57V641620)之中,即将固化在其中的数字逻辑电路映射到FPGA器件中。温度传感器单元AD590首先采集温度信号,然后经过信号调理电路的处理,使信号的输出幅度满足A/D采样的量程要求。此时FPGA控制模拟选择开关ADG706进行通道选择,同时控制多片16位A/D转换器ADS8402进行A/D转换,并将采集到的实时数据分时存储到两片类型为FIFO、容量为16K×9位的存储器IDT72V06中。然后,将其中处于读状态的IDT72V06中的数据读取出来,并经过FPGA控制SPC3通信模块,通过PROFIBUS总线传送至上位机。

  2 温度采集系统设计

  2.1 温度采集模块

  温度采集模块由多片温度传感器单元、多路信号调理电路、多路模拟开关电路以及多路A/D转换器四大部分组成。

  温度传感器单元采用热电偶。它具有以下优点:测温范围宽,性能稳定;测量精度高,热电偶与被测对象直接接触,不受中间介质的影响;热响应时间快,热电偶对温度变化反应灵活;测量范围大,-40~+1600℃均可连续测温;性能牢靠,机械强度好;寿命长,按装方便,特别适合于在复杂的工业生产过程中对温度的实时检测。

  多路模拟开关电路选用16路模拟选择开关ADG706。其4位地址位.A0、A1、A2、A3的输入直接由FPGA的I/O端口CH0、CH1、CH2、CH3控制,决定16路输入信号中要输出的通道,每条通道选择指令将同时启动多片ADG706相应的温度采集通道。然后启动相应的温度采集通道进行A/D转换。本设计采用高速逐次逼近寄存器(SAR)类比数位转换器ADS8402,多片ADS8402A/D转换器的启动转换引脚共用FPGA的一个I/O端口A/D Start。ADS8402A/D转换结果的高、低字节控制引脚BYTE及ADS8402的数据输出控制,分别由FPGA单独的I/O控制。FPGA每给A/DStart端口一个100ns的负脉冲,即可启动多片ADS8402进行相应通道上的数据采集。转换结束后,可通过控制BYTE端口读取A/D转换结果,并暂存到相应的数据单元。

  2.2 数据存储模块

  多通道采集信号的路数多、处理的数据量大,需要外扩数据存储模块来缓存FPGA处理结果。与此同时,由于上位机的多任务性,它不可能专一对并行口读取数据,为了保证FPGA控制核心与上位机通信一次性读取大量数据,本系统用到了2片异步FIFO芯片IDT72V06,其存储容量16K×9位,存取时间15 ns,其中一片用来对采集过来的数据进行存储,另一片用来读取存储在FIFO中的采集数据,以便与上位机进行并行口通信。系统运行过程中,两片FIFO位扩展进行双缓存乒乓控制,轮流进行读写操作,可大大提高并口通信速度及数据吞吐量。

  2.3 通信模块

  PROFIBUS—DP是一种经过优化的高速、廉价的通信连接方式,专为自动控制系统和设备级的分散I/O之间的通信而设计,用于分布式控制系统的高速数据传输,实现自控系统和分散外围I/O设备及智能现场仪表之间的高速数据通信。SPC3集成了全部的PROFIBUS—DP协议,SP C3在DP方式下将完成所有DP—SAP的设置。

SPC3内部集成了1.5 KB的双口RAM,包括参数寄存器、方式寄存器、状态寄存器和中断控制器等。SPC3内部集成的看门狗定时器有3种工作状态:波特率检测、波特率控制和从站控制。内部的USART可实现并行数据流和串行数据流的相互转换,微顺序控制器控制整个工作过程,空闲定时器直接控制串行总线时序。通信

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top