1 MAXl320概述
MAXl320是一种8输入通道、14位高速模/数转换器,具有独立的采样/保持(T/H)电路为每一通道提供了同时采样。该器件具有先进/先出(FIFO)功能可减少接口开销,并可在转换结束或转换之间读取转换结果。
1.1 引脚及其特征
引脚及其特征如下:
CH0~CH7:为8路模拟量输入口。
D0~D13:为14位并行数字输出,其中DO~D7为双向数据线。
CS,RD,WR:分别为片选信号,读信号,写信号。
CONVST:转换启动信号。CONVST低电平时跟踪获取模拟信号,上升沿时启动转换。
EOC,EOLC:转换结束输出(EOC),低电平表示一个通道转换结束,可以读此通道转换结果。最后转换结束输出(EOLC),低电平表示最后一个通道转换结束,然后就可以连续读取被开通所有通道的转换结果。
CLK,INTCLK/EXTCLK:外部时钟输入引脚(CLK),时钟模式选择输(INTCLK/EXTCLK),该引脚接AVDD选择内部时钟(时钟频率为10 MHz),接.AGND选择外部时钟输入(100 kHz~12.5 MHz)。
ALLON:通道使能输入。该引脚接高电平使能开通所有的输入通道(CH0~CH7),接低电平则只有被选中的通道才进行A/D转换。
SHDN:掉电输入引脚。SHDN=O选择正常模式,SHDN=1选择掉电模式。
1.2 MAXl320工作过程
MAXl320共有8个模拟输入通道,可通过寄存器的设置选择使用。当ALLON设为低电平时,设置寄存器选择打开通道,同时拉低CS和WR,然后向数据线D0~D7写入数据,D0~D7依次对应着通道CH0~CH7,通过向数据线D0~D7中写入“1”来选中对应的通道。如果当ALLON设为高电平时,所有通道都被打开,无需设置配置寄存器。当模拟输入通道确定后,给CONVST发一个低电平,即启动1次模/数转换。假设8路模人通道都被使用,则芯片内部的8个采样/保持器在CONVST上升沿到来之前跟踪输入信号,在其上升沿,输入模拟信号被采样/保持,然后进行模/数转换。EOC一旦出现下降沿,就表明一路转换结束,EOLC一旦出现下降沿,就表明全部模/数转换结束。对于转换结果,有两种读取结果方式:可以在每转换一路后,就将该路转换后的数据读走,然后进行下一路转换(见图1(a));也可以等到所有通道全部转换完后依次读取,整个读数过程中EOLC信号一直为低,直到CONVST的下一个下降沿(见图1(b))。
2 MAXl320在风机监测仪数据采集中的应用
该风机监测仪是基于ARM7处理器的,处理器采用Philips公司的LPC2290。其数据采集部分硬件框图如图2所示。
实际的风机监测仪根据不同时段不同要求可选择性地同时测量多路的信号输入,所以这里置引脚AL—LON要接地,根据要求写配置寄存器,开启需要开通的通道,不用的通道就关闭,使其降低功耗。因为考虑到此监测仪所使用的环境比较恶劣,如果使用外部时钟,则输入的时钟信号容易被干扰,从而导致整个数据采集模块不稳定,所以使引脚INTCLK/EXTCLK也接+3.3 V,选择内部时钟(10 MHz),10 MHz频率完全能满足此监测仪的采样要求。
3 MAxl320外围模拟电路的设计
3.1 模拟输入电路
工业风机监测仪监测最常见的测量信号参数就是风机轴振动加速度、速度、位移。此监测仪可连接加速度传感器、速度传感器、位移传感器,具体模拟部分电路方框图见图3。图3中接入的就是ICP加速度传感器,且只是一组ICP模拟输入,它分为ICP_V(垂直方向)和ICP_H(水平方向)的两路输入,A-V,A_H,V_V,V_H,S_V,S_H分别为加速度、速度、位移的垂直方向和水平方向输出。如果使用速度传感器,则第一级输出的是速度,第二级输出的位移,第三级电路没意义。如果用位移传感器,则第一级输出的是位移,第二,三级电路没意义。低通滤波电路和积分电路所使用的运算放大器都是用集成芯片MAX4164,它集成了4个低功耗运算放大器。低通滤波电路是采用二阶低通滤波,对于普通的一阶低通滤波电路,增加了RC环节,加大衰减斜率,使滤波效果更好。积分电路是最典型的积分运算电路,在输入端加一个1μF的电容是为了滤掉直流分量,在积分电容上并联一个电阻是防止低频信号增益过大和积分漂移所造成的饱和或截止现象,大小一般大于等于输入电阻的10倍以上。可编程放大器采用LTC6911-2,它是一种两匹配可编程放大器集成芯片,可通过对3位可编程接口G1,G2,G3写值从而得到0,1,2,4,8,16,32,64输出放大倍数。
3.2 多路选择电路
用于工业现场的风机监测器的模拟信号输入一般都多于8路,所以可以在.MAXl320的8通道输入外加上多路选择电路,该监测仪用CD74HC4052来组成多路选择电路。CD74Hc4052是一个双电源输入,四组通道选择芯片,通过选择S0,S1,可以使输出四组中的任意一组,最大模拟输入范围在±5 V。
4 实验调试
4.1 程序设计
MAXl320的底层驱动程序是在集成开发环境ADSI.2开发的,其中A/D转换软件流程如图4所示。
在实际应用中为了能控制ADC的采样频率,该设计使用定时器对A/D整个采样、读取数据的过程进行行定时操作,从而使监测仪能根据现场的各种要求改变采样频率。这其中对于A/D转换的软件设计,就有所改变:当要使用比较低的采样频率时(100 Hz~5 kHz),定时的时间就比较长,因为本监测仪的软件设计是基于μC/Os-Ⅱ嵌入式系统下,所以使用定时器中断方式,这样就会避免在采样这个任务里一直等待定时的到来,降低多任务操作系统的运行效率。把采样,读取数据整个过程放在中断服务程序,当定时时间到时,就立刻跳到中断服务程序里执行采样读取操作,然后再跳出中断程序,继续执行主程序后面的操作;当要使用比较高的采样频率时(5~40 kHz),因为定时时间很短,所以可以用查询方式,一直查询定时器中断标志位,当中断标志位置位时,就执行采样读取操作。
4.2 实验测试
采用内部时钟,并使8通道都开通,通道0~7都输入1 kHz的正弦波(峰峰值为2 V),把MAXl320的D0~D13与的LPC2290的D0~D13接起,其他的对应的引脚根据图3连接起来,启动A/D转换,因为8个通道的数据都一样,所以只读取通道O转换后的数值,结果如表1所示。
以上测试结果数据是采样1 kHz正弦波1个周期的采样点数值,一共采样38个点,其中正值部分采样点有19个值,负值部分采样点也有19个值,表1只列出其中一部分具有代表性的值。把这些采样点在坐标上标出,就可以还原出输入的正弦波。通过示波器可以看到实际跟踪捕获信号和采样信号所用的时间和理论值基本相同。但是,等待EOLC信号变低由于本身执行程序需要时间,再加上读取转化结果是受到处理器数据总线本身的速度限制,整个采样频率就低于理想值。可以通过一些改进来减小这两个因素对采样频率的影响即:
(1)可以把EOLC接到处理器的外部中断信号引脚,采用中断方式,这就要比原来设计的查询方式响应速度快;
(2)可以提高CPU时钟周期或减少读写操作所占用的CPU周期数。
5 结 语
通过上面的实验测试结果以及示波器测出的采样时间(0.3μs左右)和转换时间(3.7μs)可知,8个通道同时工作时,采样转换总时间是4μs左右,所以可以算出每个通道的吞吐量大概是250kS/s,这样完全能满足现场风机监测仪数据采集的要求。