首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

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

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

关键字:温度采集   FPGA   NiosII   PROFIB  



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

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



图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总线传送至上位机。3 系统的FPGA实现

3.1 Nios II系统架构设计

Nios II系统模块包含:Nios II处理器、Avalon总线、并行输入/输出口PIO、串行外围设备接口SPI、定时器Timer、片内存储器EPCS、片外存储器SDRAM、PROFIBUS-DP的客户定制逻辑。由Nios II处理器完成程序控制,主要负责对温度的采集与数据存储操作,并控制PROFIBUS -DP的通信过程。其架构如图5所示。



图5 Nios II系统架构



3.2 系统软件设计

Nios II处理器的软件设计是在软核内存放一段编写的C/C++语言控制程序。来控制系统运行,它可以读写芯片的存储单元,同时与外围的设备进行通信。在本系统中,Nios II程序的任务是:在规定的周期内,FPGA通过通信模块接收上位机发出的采样任务及控制参数,然后控制模拟选择开关ADG706和A/D转换器ADS8402,使它们对选定通道的模拟信号进行调理及A/D转换,并读取采样数据以乒乓传输数据方式传送至片外FIFO缓存,再通过PROFIBUS—DP通信接口将采样数据传输至上位机。主程序流程如图6所示。



图6 主程序流程图



结语

基于FPGA的多通道实时温度采集系统以Nios II软核处理器实现SOPC,进一步简化了硬件设计。与传统的基于MCU的多通道温度采集系统相比,该系统具有资源配置灵活、运行稳定可靠、实时性强等优点。另外,该系统具有标准PROFIBUS—DP接口,作为一个DP从站实现与多种DP主站的通信,可广泛应用于工业生产领域的PROFIBUS分布式控制系统中。
返回列表