DSP FPGA 数据采集系统
继电器
在图1中,CPLD需要完成对三片多路复用开关、多路采样保持器和A/D转换器的控制,同时,根据A/D控制器的工作方式,还要对A/D转换器的
某些端口进行查询。
2系统的组成
2.1
CPLD的选择
cPLD有以下几大优点:编程方式简便、先进,可以方便地通过软件编程实现各种逻辑器件的功能;高速——cPLD的时钟延时可以达到ns级,减小了系统的延时误差;高可靠性——几乎将整个控制系统下载于同一芯片中,大大缩小了体积,易于管理
和屏蔽pJ。
cPLD的这些优点很符合电力系统综合负荷特性数据实时采集装置采样通道多的应用要求。本系
统选用的CPLD是Altera公司的MAx7000系列产
品EPM7128s一84LCC,它是可编程的大规模集成逻辑器件,具有高阻抗性、电可擦除等特点,可用门单
元为2500个,工作电压可以支持+5V或者+3.3
VH’5
o。该芯片有4个固定输入口,用来提供芯片工
作主频、复位、清零等功能;68个通用I/O口,完全
能够满足系统的输入输出的要求。
2.2
A/D的控制方式
鉴于12位A/D转换器采样精度不高,16位串行输出A/D转换器与并行总线的接口复杂且传输速度慢,难以满足高速采样要求,所以本系统选用ADs8505。ADS8505是双极性输入,16位并行输出的A/D转换器,采样率最高可以达到250k/s,每次转换的时间只需要4ns旧j。ADs8505的控制是通过对片选信号cs、启动信号R/c以及对状态信号
BUSY的查询来实现的。
在本控制系统中,使用了多片多路复用转换开关,在进行数据的A/D转换的时候,是采用单A/D还是多A/D工作就是不得不面对的问题。经过研究和试验,相比较多A/D控制器的形式,单A/D控制器便于时序的控制,不需要对多个A/D转换器进行时序的转换,而且,更加经济,能有效地降低成本。
ADs8505有2种转换和读数的方法[7'8]:1)转换和读数同时进行
让R/c为低启动转换,在转换的同时读取上一次转换完成的结果,但是必须在启动转换后7斗s内读数才有效,否则数据无效。
2)先转换后读数
让R/c为低启动转换,查询BusY位。BusY是
ADs8505的状态信号,当BusY为低时,表示转换已经完成;为高时,表示转换正在进行。这种方法很灵活,一般有两种操作方法:一种是CS始终接低电平,由R/c来控制;另一种是Cs和R/c同时为低时启动转换;cs为低,R/c为高时将完成转换的数据输出。
在以上的控制方式中,CS始终接低电平,由R/c来控制的控制方法,就是将A/D转换器恒定地置
于工作状态,这种控制方式将会降低A/D转换器的使用寿命,影响系统的稳定性。因此,作者采用了
CS和R/c同时为低时启动A/D控制器的方式。在
这种工作方式中,当A/D转换器接收到启动信号后,cs和R/c置低,并且至少保持40ns的低电平脉冲,A/D转换开始;同时,BuSY位置高。在数据A/D转换完成的时候,BuSY位变为低电平,R/c将变高,同时,将转换完成的数据输出。在数据输出的过程中,由于ADs8505内部的数据总线是8位的,而转换的结果是16位的,因此,ADs8505设有一个BYrIE位,当传输的是低八位的数据时,BYTE保持为低电平,传输的是高八位数据时,BYTE位就会自
动置高。
多路复用开关和采样保持器的控制
根据采集装置的要求,设计了36路采集通道,因此必然要在将采集到的同步原始信号输入A/D转换器之前将信号保持,保持的时间由后台cPu设定的采样周期确定,并通过多路复用开关,把选通通道的信号送人A/D转换器。现有的多路复用开关最多只能达到16选1,要实现36路采集通道的转换就不得不采用三个多路复用开关的组合,作者利用两片16选1和一片4选l的多路复用开关实现了36路通道,并利用软件MAx+PLusEII和VHDL语言编写控制程序实现了36路通道之间的
切换。
系统利用软件MAX+PLUSII来完成CPLD程
序的编写。MAx+PLuS11支持多种输入方式,在这里,作者用到的是其中的文本输入方式和图形输入方式,采用的是硬件语言VHDL,采用至顶向下的方法进行设计。
作者设计的系统控制部分如图2所示,由两大部分组成:一部分是控制A/D转换器和采样保持器,如图2中的AD03模块;另一部分是对多路复用
开关的控制,如图2中的controlmux模块。
2.3
3系统的实现