tag 标签: ADS8364

相关博文
  • 热度 24
    2015-3-24 13:56
    1068 次阅读|
    0 个评论
      随着现代科学技术的发展和计算机技术的普及,高速数据采集系统已应用于越来越多的场合,如通信、雷达、生物医学、机器人、语音和图像处理等领域。本文介绍的数据采集处理系统采用CPLD控制ADS8364完成数据的A/D转换,转换后的数据预先存储到FIFO中,再经DSP进行前端的数字信号处理后,通过USB总线传给上位机,并在上位机上进行存储、显示和分析等。该系统完全可以满足信号采集处理对高精度及实时性的要求。   1 系统原理   数据采集处理系统主要由前端信号调理电路、ADC芯片ADS8364、CPLD芯片EPM3128A、DSP芯片TMS320F2812、USB芯片CY7C68013及其外围电路组成。系统原理框图如图l所示。   系统主要完成的任务为:DSP接收上位机通过USB总线发送的命令,完成系统工作参数的设置,并通过模拟地址/数据总线与CPLD进行通信,向CPLD发送控制命令;对外部的多路模拟量输入进行信号调理,在CPLD控制下进行单通道或多通道A/D转换,将采集到的数据存储在一片FIFO芯片中;当FIFO中存储的数据半满时,对DSP产生一个中断信号,DSP收到此中断信号 后,取出FIFO中的部分数据,进行前端数字信号处理,将处理完毕的数据通过USB总线传给上位机;上位机实现各种图形界面操作和后端信号处理,对所采集的信号进行分析。系统可对输入的多路模拟信号进行同步采样,这就使得采集到的数据不仅含有模拟信号的幅度特性,同时还保持不同模拟信号之间的相位差异;采样频率可以预置,以适应不同速率的采样要求。    2 系统硬件   系统硬件包括信号调理模块、A/D转换模块、DSP处理器模块、CPLD逻辑控制模块以及USB通信模块。    2.1 信号调理模块的设计   外部的多路模拟量输入信号往往是微弱的传感器信号,信号的幅值较小,为了方便且不失一般性,假定其幅值范围为O~25mV。ADS8364待转换的模拟输入电压范围应保持在AGND-0.3V和AVDD+O.3V之间。这里选用低功率变增益仪表放大器INAl29对模拟量输入信号进行调理放大,将其放大为0~5V之间。   INAl29是BURR-BROWM公司的一种小功率通用仪表放大器,具有优异的精度和很宽的带宽,在增益高达100时,带宽达200kHz。它可用单一外部电阻器调节其增益,调节范围为l~10000,其放大倍数计算公式为:   从而使放大输出电压在O~5V之间。信号调理模块原理图如图2所示。    2.2 A/D转换模块的设计   该模块采用了TI公司的高速、低功耗、六通道同步采样模/教转换器ADS8364,它采用+5V工作电压,其6个模拟输入通道分为三组(A,B和C),每组都有一个ADCs保持信号(HOLDA,HOLDB和HOLDC),用来启动各组的AID转换,6个通道可以进行同步并行采样和转换。ADS8364采用具有80dB共模抑制能力的全差分输入通道,将其REFin和REFout引脚接到一起,为差分电路提供2.5V的参考电压。这里模拟量采用单端输入,将-IN端接共模电压2.5V,+IN端接前端信号调理模块的输出。   ADS8364的时钟信号由外部提供,最高频率为5MHz,对应的采样频率是250kHz。这里由CPLD提供时钟信号,主要是考虑到CPLD可以灵活地改变时钟频率,进而改变系统的采样频率。A/D转换完成后产生转换结束信号EOC。将ADS8364的。BYTE引脚接低电平,使转换结果以16位的方式输出。地址/模式信号(A0,Al,A2)决定ADS8364的数据读取方式,可以选择的方式包括单通道、周期或FIFO模式。将ADD引脚置为高电平,使得读出的数据中包含转换通道信息。考虑到数据采集处理系统的采样频率一般较高,如果用DSP直接控制ADS8364的访问,将占用DSP较多的资源,同时对DSP的实时性要求也较高。因此在本系统设计中,用CPLD实现ADS8364的接口控制电路,并将转换结果存储在FIFO芯片中,用DSP实现FIFO芯片的输出接口。   DSP、CPLD、ADS8364及FIFO之间的接口设计如图3所示。    2.3 DSP处理器模块的设计   DSP主要负责与USB通信模块交换数据、以模拟地址/数据总线的方式与CPLD通信,实现对数据采集的控制,完成与FIFO芯片的输出接口以及对采样后的数据进行前端数字信号处理(FIR低通滤波)。这里选用TI公司的32位定点DSP TMS320F2812 (以下简称F2812),它采用1.8V的内核电压,具有3.3V的外围接口电压,最高频率150MHz,片内有18K字的RAM,128K字的高速Flash。 .        2.4 CPLD逻辑控制模块的设计   在该数据采集处理系统中,CPLD是一个重要的组成部分。由CPLD组成的逻辑控制模块接收DSP传送过来的动作命令,控制A/D转换模块进行数据采集,并提供对FIFO的接口时序,实现转换数据的存储。这里选用Altem公司的EPM3128A芯片,它共有128个宏单元,2500个可用门。   CPLD作为一个单独的控制执行结构.通过编写相应的Verilog HDL代码,即可生成相应的操作电路,实现对各种输入信号的锁存、判断和处理以及对各种命令信号的执行和输出信号的控制。    2.5 USB通信模块的设计   这里选用CYPRESS公司的EZ-USB FX2系列中的CY7C68013作为USB通信控制器芯片,它内含增强型8051微控制器,支持USB2.0传输协议,同时也向下兼容USBl.1规范。该芯片把USB2.0收发器、SIE(串行接口引擎)、增强型8051微控制器、I2C总线接口以及GPIF(通用可编程接口)集成于一体。CY7C68013提供了SlaveFIFO和GPIF两种接口模式,Slave FIFO模式是从机模式,外部控制器可以像对普通FI FO存储器一样对FX2的多层缓冲FIFO存储器进行读写;GPIF模式是主机模式,可以由软件设置读写的控制波形,灵活性很大。这里采用的是Slave FIFO模式。   3 系统软件设计   系统软件设计包括DSP程序设计、USB固件程序设计、USB驱动程序设计和上位机应用程序设计。    3.1 DSP程序设计   DSP编程的主要任务是初始化、管理板上的资源和实现前端数字信号处理的算法。这里以TI公司提供的功能强大的CCS(Code Composer Studio)为集成开发环境。系统上电复位后。首先完成F2812自身的初始化,包括配置RAM块,设置I/O模式、定时器模式、中断等;然后程序进人循环状态,等待USB及FIFO的中断。F2812主程序流程图如图4所示。   在F2812的程序存储器中存储常用的数字信号处理算法,F2812在收到上位机通过USB总线发送的控制信息后,在中断函数中选择某种处理算法,同时向CPLD发出动作命令,控制A/D转换模块完成信号的采集并将采集到的数据存入FIFO中。当FIFO中数据达到半满时,向F2812提出中断申请,F2812响应此中断,在中断函数中实现对部分采样数据的读取,在主循环程序中根据上位机选定的处理算法完成数据的前端处理,然后将数据打包,通过USB总线传输给上位机。对于常用的数字信号处理算法在DSP上的实现,这里不再赘述。   3.2 USB固件程序设计   固件负责辅助硬件让设备双向交换数据,其主要功能是:接收并处理USB驱动程序的请求及应用程序的控制指令。CYPRESS公司针对EZ-USB FX2系列芯片给出了一个Firmware库和Firmware框架(Frame Works),均采用Kei C5l开发。Firmware库提供了一些常量、数据结构、宏定义、函数来简化用户对芯片的使用。用户只需要在源程序中包含进fx2.h、fx2regs.h和fx2sdly.h,并且把Ezusb.1ib和UsBJmpTB.obj添加进项目即可。Firmware框架实现了初始化芯片、处理USB标准设备请求以及挂起状态下的电源管理等功能。该框架无需添加任何代码,将编译后产生的*.hex文件载入芯片就能与主机进行基本的USB通信,只是不能完成特定的任务。在本系统中,需要选择适当的传输方式,添加需要使用的端点(Endpoint),在框架预留的地方(如TD_Init()、TD_Poll()等函数中)添加初始化代码和完成特定功能的代码。   USB共有四种数据传输方式:控制传输、中断传输、块传输及同步传输,本系统中使用了控制传输和块传输。控制传输主要用来完成主机对设备的各种控制操作,即用来实现位于主机上的USB总线驱动程序以及编写的功能驱动程序对设备的各种控制操作;块传输主要用来完成主机和设备间的大批量数据传输以及对传输的数据进行错误检测(支持“错误重传”功能)。    3.3 USB驱动程序设计   CYPRESS FX2开发包中提供了一个通用的设备驱动程序Ezusb.sys,可用于基于EZ-USB FX2系列的芯片,能够完成基本的USB通信任务。本系统设计中,利用DDK对上述驱动程序进行了修改,将不常用的函数删除,同时添加了自己定义的函数。         3.4 上位机应用程序设计   上位机应用程序主要实现与数据采集处理系统间的USB通信、向系统发送控制命令以及接收系统传送过来的数据并进行存储、处理与显示。在Win32系统中,各个设备被抽象为文件,应用程序通过文件操作API函数实现与驱动程序中某个设备的通信。USB通信常用的API函数有;CreateFile(),WriteFile(),ReadFile(),DeviceloControl(),CloseFile()等。在应用程序中,只需将上述函数添加到相应的功能模块中便可完成应用程序对USB设备的打开、读、写等操作,从而实现两者的通信。采用LabVIEW语言实现USB通信及仪器界面,而对于后端的信号处理算法则在VC++环境下实现并生成动态链接库文件(*.d11),方便LabVIEW的调用。图5为上位机上层应用程序的流程图。   本文将TMS320F2812与ADS8364相结合,设计了一套数据采集处理系统。该系统采用uSB总线与上位机通信,充分发挥了USB2.O方便、快捷的优点;考虑到对实时性的要求,将某些特定的数字信号处理算法(如FIR滤波、快速FFT等)放到数据采集处理卡上由DSP快速完成。该系统采集精度高,速度快,并可同时采集多路信号。实践证明,该数据采集处理系统可适用于高精度、实时性信号的数据采集和处理,具有广泛的实用价值。
  • 热度 15
    2015-3-24 13:32
    1194 次阅读|
    0 个评论
      实时数据采集与处理技术在许多领域得到广泛应用。在图像处理、瞬态信号检测、软件无线电、雷达信号分析、医用成像设备和工业现场控制方面,需要对连续变化的模拟信号进行同步数据采集,因此,对运动过程中变化的信号高速A/D采集是十分重要的 。本文介绍一种基于TI公司的TMS320F2812 DSP芯片(以下简称F2812)与A/D转换芯片ADS8364构成的同步高精度的数据采集系统,解决了大型曲面钢板结构参数测量机器人系统中传感器信号采集的关键问题。    1 系统原理   本采集系统结构框图如图1所示,由前端的系统(包括电流信号取样、信号调理模块、A/D转换模块、DSP处理器控制模块、CAN总线网络)以及上位机、PC104机、上位机CAN适配器几部分组成。其中前端系统的核心部分是A/D转换模块和F2812,A/D转换将模拟信号转换成数字信号,A/D接收控制芯片F2812指令,设定A/D转换部分的采样率,控制A/D转换,进行数据预处理。数据就绪后,通过ADS8364的EOC信号通知F2812,由F2812将数据读出并且进行计算处理。DSP通过控制CPLD在合适的时候采样并读取采样数据,在空闲的时候做数据处理。   系统主要完成的任务为:DSP接收上位机通过CAN总线上发送的命令,完成系统工作参数的设置,并通过模拟地址/数据总线与CPLD进行通信,向CPLD发送控制命令;对外部的多路模拟量输入进行信号调理,在CPLD控制下进行单通道A/D转换,将采集到的数据存储在1片Flash芯片中,并经过CAN总线实时传送给上位PC104主机。    2 系统硬件   系统硬件包括信号调理模块、A/D转换模块、DSP 处理器模块、CPLD 逻辑控制模块以及CAN总线通信模块。DSP、CPLD、ADS8364之间的接口设计如图2所示。    2.1 信号调理模块的设计   激光位移传感器输出的模拟量电流输入信号的范围为4~20 mA。ADS8364待转换的模拟输入电压范围应保持在AGND-0.3 V和AVDD+0.3 V之间。通过1个250 Ω精密取样电阻,将电流信号转换为1~5 V电压信号。通过运放跟随电路提高输入阻抗,增强系统的抗干扰能力。电路中取样电阻非常关键,它们影响着输入信号的变换精度,因此必须采用温漂较小的精密电阻。    2.2 DSP处理器与A/D转换模块设计   本采集系统要求对激光位移传感器的模拟信号进行采集,鉴于测量精度要求较高,选择TI公司的高精度ADS8364作为A/D转换芯片,它是TI公司新推出的高速、低功耗、6通道同步采样16位模数转换器,采用+5 V工作电压,最大采样吞吐率可高达5 MHz; 带有80 dB共模抑制的全差分输入通道以及6个4 s连续近似的模数转换器、6个差分采样放大器;片上还带有+2.5 V参考电压以及高速并行接口。   DSP主要负责通过CAN总线与上位机交换数据、以地址/数据总线的方式与CPLD 通信, 实现对数据采集的控制以及对采样后的数据进行前端数字信号处理(数字低通滤波)。这里选用TI公司的32位定点DSP TMS320F2812芯片,它采用1.8 V 的内核电压, 具有3.3 V 的外围接口电压,最高频率150 MHz,片内有18 KB的RAM, 128 KB的高速Flash 。   在本系统中,上电后由硬件复位ADS8364,ADS8364的CLK时钟由外部独立的有源晶振提供,频率为4 MHz。A/D转换完成后产生转换结束信号EOC。将ADS8364的BYTE引脚接低电平,使转换结果以16位的方式输出。地址/模式信号(A0,A1,A2)决定ADS8364 的数据读取方式,可以选择的方式包括单通道、周期或FIFO模式。将ADD引脚置为高电平, 使得读出的数据中包含转换通道信息。考虑到数据采集处理系统的采样频率一般较高,如果用DSP直接控制ADS8364的访问,将占用DSP较多的资源, 同时对DSP的实时性要求也较高。因此在本系统设计中, 用CPLD实现ADS8364的接口控制电路。DSP的GPIO与ADS8364的HOLDA、HOLDB、HOLDC信号相连,控制6个ADC的采样/保持。EOC连接到F2812的XINT1。    2.3 CPLD逻辑控制模块设计   在该数据采集处理系统中, CPLD是一个重要的组成部分。由CPLD 组成的逻辑控制模块接收DSP传送过来的动作命令, 控制A/D 转换模块进行数据采集。这里选用Altera公司的MAX II系列芯片 EPM1270, 它包含1 270个LE相当于40 000门数,980个等效宏单元数,8 KB用户可用Flash。116个用户可用I/O口,扩展方便。   CPLD 作为一个单独的控制执行结构,通过编写相应的Verilog HDL代码, 即可生成相应的操作电路, 实现对各种输入信号的锁存、判断、处理以及对各种命令信号的执行和输出信号的控制。    2.4 CAN通信模块设计   由于所选的TMS320F2812 DSP 内部含有CAN控制器,只需加1个CAN收发器芯片即可实现CAN总线网络。CAN通信模块的功能是将采集系统的采样结果及运行参数实时上传到总线,提供给上位机存储及处理。    3 系统软件设计   软件程序运行于硬件平台之上,实现采样系统的采集、滤波以及后期处理,是测量装置的灵魂。本装置软件设计主要由主程序和子程序组成。为了实现准确、快速、实时的测量功能,采用C 语言和汇编语言混合编程。    3.1 DSP 程序设计   DSP编程的主要任务是初始化、管理板上的资源和实现前端数字信号处理的算法。这里以TI公司提供的功能强大的CCS(Code Composer Studio) 为集成开发环境。系统上电复位后, 首先完成F2812 自身的初始化, 包括配置RAM块、设置I/O 模式、定时器模式、中断等; 然后程序进入循环状态,等待上位机CAN指令的到来。在F2812的程序存储器中存储常用的数字信号处理算法,F2812在收到上位机通过CAN总线发送的控制指令后,在中断函数中选择某种处理算法,同时向CPLD发出动作命令,控制A/D转换模块完成信号的采集并将采集到的数据存入SRAM中。当采样点数达到设定点数时,DSP程序实现对部分采样数据的读取,在主循环程序中根据上位机选定的处理算法完成数据的前端处理,然后将数据打包,通过CAN总线传输给上位机。F2812主程序流程图如图3所示。    3.2 数据采集子程序流程   数据采集子程序流程如图4所示。首先,在外部时钟信号的作用下,F2812要提供ADS8364所需的HOLD保持信号,启动转换。待ADS8364转换完成时,产生EOC中断信号给F2812,F2812接收到EOC信号后,对所需的通道结果寄存器进行读操作,只要保证CS和RD同时为低50 ns以上,就可将转换完的数据读出。由于测量系统采样时刻由数控系统运动状态来决定,因此,对于采样时刻的确定要在测量机构运动过程中的空闲时间进行。保证空闲时间远大于2 ms并且保证采样时刻对应其他各轴的坐标反映了测量目标的真实形状数据。由于ADS8364的转换速度很快,在启动A/D转换之后,只需等待5 μs即可读取转换结果,因此可采用等待方式,等待时间大于5 μs即可读取数据。在实际工作时,智能测量节点将采集到的数据发送到中心处理主机进行存储、处理。中心处理主机采用PC104总线的嵌人式CPU,通过CAN接口卡PCI5121和智能节点通信。   本文将TMS320F2812与ADS8364相结合,设计了一套数据采集系统。该系统采用CAN总线与上位机通信, 充分发挥了CAN2.0方便、快捷的优点。考虑到对实时性的要求,将某些特定的数字信号处理算法放到数据采集处理卡上由DSP快速完成。该系统采集精度高, 速度快,并且可同时采集多路信号。该数据采集处理系统已经用于大型曲面钢板的结构参数测量中,实践证明, 运行稳定可靠。
相关资源
  • 所需E币: 4
    时间: 2019-12-25 15:19
    大小: 227.33KB
    上传者: 978461154_qq
    开发了基于DSP和ADS8364的高速数据采集处理系统.该系统主要由信号调理模块、A/D转换模块、DSP处理器模块、CPLD逻辑控制模块和USB2.0通信模块组成.它能够在板卡上实现信号的采集及前端处理,并能通过USB总线与上位机通信,实现数据的存储、后端处理及显示.参考了虚拟仪器的设计思想,重点阐述了系统原理及硬件、软件的设计.……
  • 所需E币: 3
    时间: 2019-12-30 09:59
    大小: 205.19KB
    上传者: 二不过三
    ADS8364的原理及应用……