工业设备的状态监测和故障诊断,有效地保证了设备的平稳运行,并在设备预知维修中发挥越来越重要的作用。为了满足石化企业对于状态监测和故障诊断的需求,设计了一款便携式综合性设备状态监测与诊断仪器。TI公司推出的OMAPL138双核处理器,具备强大的复杂数据处理能力和可靠的实时性,可以实现高性能双通道数据采集器和信号分析,现场显示FFT频谱图、轴心轨迹等功能。
OMAPL138处理器综合了DSP和ARM两个处理器各自在实时性和计算精度上的优势。DSP进行信号处理任务,ARM可以运行嵌入式操作系统及图形界面,完成波形显示、存储及外围器件的控制。DSP与ARM间的数据通信由DSP/BIOS桥来实现。
1 硬件设计
1.1 处理器及其外设电路设计
OMAPL138芯片采用C6748内核和ARM926EJ-S核,两个处理器主频最高支持到456 MHz。C6748是一个定点浮点数字信号处理器核,它相对TMS320C6000器件功耗显著降低,并可实现代码兼容。ARM926EJ-S是一个32 bit精简指令集的处理器核,可以执行32 bit、16 bit指令集,处理32 bit、16 bit、8 bit数据。ARM核有一个协处理器CP15,以及8 KB的RAM、64 KB的ROM。接口支持1个10/100 M以太网接口,DDR2内存控制器,1个EMIFA接口,2套I2C与SPI接口,以及2套McBSP接口等[1]。OMAPL138的硬件连接图如图1所示。
OMAPL138使用EMIFA接口控制Flash的操作,使用GPCM 16 bit操作模式。FLASH选用SPANSION公司的一款容量为32 MB的芯片,用于存储BOOT内容和应用程序。此外,OMPAL138的数据地址线顺序采用SMALL_EIDEN模式,地址线和数据线的连接要注意最高有效位与最低有效位的顺序与PowerPC等系列的处理器不一致。
OMAPL138支持mDDR和DDR2两种制式,本设计选用DDR2 SDRAM作为芯片的内存。DDR2 SDRAM采用1片DDR2芯片MT47H64M16HR来实现,单片芯片的容量是128 MB,位宽16 bit,内部分为8个BANK。只需要配置SDCR、SDRCR、SDTIMR1、SDTIMR2这4个寄存器即可实现对DDR2的配置。OMAPL138的DDR2控制器最高速率支持150 MHz。
OMAPL138通过I2C接口连接一片E2PROM,型号为AT24C32CN,有 4 096×8 bit的存储空间,用于存储传感器标定参数和版本信息等。
此外OMAPL138通过MII接口连接网线与PC机之间的通信,还可以通过UART接口方便地与上位机进行驱动程序的调试,打印调试信息。
1.2 数据采集电路设计
系统数据采集部分由两路高速AD、大容量缓冲器FIFO和FPGA组成。FPGA负责高速数据采集逻辑控制、缓存FIFO逻辑控制[2]。采集得到的信号传到OMAP中的DSP核,然后进行信号处理、完成算法,最后送给ARM核进行波形显示等功能。数据采集模块架构如图2所示。
通过压电式加速度传感器采集得到的振动信号,首先通过信号调理放大电路,之后再经过二阶巴特沃斯带通滤波器,可以由AD采集得到纯净的加速度信号。加速度信号经过一级积分电路可得到速度信号,再经过一级积分电路可得到位移信号。
在旋转机械状态检测和诊断中,键相信号占有重要的位置。通过电涡流传感器产生的键相信号一般为-10 V左右的负脉冲,经过隔直、反相、迟滞比较之后变成3.3 V的窄脉冲,送给FPGA作为触发采集的触发信号。
FPGA选用ALTEra公司的Cyclone系列,通过OMAP上的UPP(Universal Parallel Port)接口相连接,将高速数据信号传输到OMAP的DSP核。FPGA接受键相电路的触发作为数据采集的相位零点,同时控制单路或两路AD同时对调理后的振动信号进行采集,采集得到的数值先缓存到FIFO中,然后再通过FPGA传送到OMAP中。
在OMAP的DSP核中,可以将采集得到的振动波形进行数字信号处理,完成傅里叶变换、轴心轨迹、动平衡等算法。最终通过DSP/BIOS桥将处理结果传送给ARM核,在应用程序中显示出时域图、频谱图和轴心轨迹图等。