引言
在大型旋转机械、桥梁、地下铁路、加工机床等领域,对振动信号进行采集和分析,可以实现危险预报、故障诊断、性能指标分析等多项功能。传统的便携式振动测量分析仪大多用单片机或RISC CPU作为核心处理器,一般是8位或16位的,内存只有几Kb,外部存储器的容量也只有1~2 Mb,再加上CPU的主频不高,进行大量数据运算(如FFT等),需要很长时间,图像显示基本上依靠黑白液晶屏,可以显示的内容少,因此对传统的便携式振动测试分析仪进行性能的改进很有必要。
本项目采用ARM9的S3C2410处理器,可以连续监测8个通道,提供转速、棒图、振动通频值、数据列表、时域波形、频谱图、伯德图等振动监测、分析图表。采用640×480的TFT彩色显示屏,界面美观,可以显示的内容丰富,采用64Mb内存,可以暂存长时间的采样数据、运算结果数据,采用64Mb NAND FLASH,可以保存多组测量历史数据。体积小,22cm×18cm×10cm,携带方便,较以前产品,性能有了大幅度的提高。
硬件部分介绍
硬件主要由3部分组成,核心板、底板及信号输入接口板共3块电路板组成,下面分别介绍。
核心
板
核心板主要由S3C2410处理器、64Mb NAND FLASH(K9F1208)、64Mb内存(2片HY57V561620 )组成。底板的接口采用144引脚的内存插槽,引出了16位的数据总线、16位的地址总线、IIC接口、SPI接口、IIS接口、JTAG接口、USB接口、LCD接口、触摸屏接口等CPU的输入输出口线。
S3C2410处理器是Samsung公司基于ARM公司的ARM920T处理器核,采用0.18μm制造工艺的32位微控制器。该处理器拥有:独立的16KB指令Cache和16KB数据Cache、MMU、支持TFT的LCD控制器、NAND闪存控制器、3路UART、4路DMA、4路带PWM的Timer 、I/O口、RTC、8路10位ADC、Touch Screen接口、IIC-BUS 接口、IIS-BUS接口、2个USB主机、1个USB设备、SD主机和MMC接口、2路SPI。S3C2410处理器最高可运行在203MHz。每秒钟的运算能力为203×1.1MIPS,所以对FFT的计算非常的快。
电路原理图设计参考了三星公司提供的评估板的ORCAD格式的电路原理图。小经验:国内的硬件工程师普遍熟悉PROTEL软件,对ORCAD不是很熟悉,用PROTEL 2004可以直接打开ORCAD格式的三星公司的S3C2410评估板的电路原理图,适当的修改就可以形成自己的需要的PROTEL格式的电路原理图,而且不容易出错,所以本核心板的原理图设计非常顺利。
PCB的设计由于S3C2410采用272引脚的BGA封装,所以电路板的制作采用了6层电路板,从顶层到底层依次为元件层、地、布线层1、布线层2、地、底层。布线间距最小为5mil,最小线宽5mil, 过孔大小8/16mil,核心板全部采用手工布线完成。
底板的设计
底板主要由A/D电路、TFT彩色屏接口、网络接口电路、触摸屏接口电路组成,各部分的电路如下面所述。
A/D芯片与CPU的接口
A/D芯片采用AD7864,AD7864是一种高速、低功耗、可以4通道同时采样的A/D转换器。它的主要特性有:高速12位A/D转换器;同时采样4个输入通道,并具有4个采样、保持放大器;0.35μs采样保持获取时间,每一个通道转换时间1.65μs;可以通过软件或者硬件的方法选取用于采样的通道;单电源供电(+5V);多个转换电压范围;具有高速并行接口,可以与处理器直接连接;低功耗,每通道功耗90mW;对于每一个模拟输入通道均有过压保护电路。AD7864 4通道同时工作时,最大采样率可以高达130kHz。用了2片AD7864,可以同时采样8路信号,同时监测8个通道。
通常的机械的转速的范围在100~30000转/分,即最高频率为500Hz,根据振动分析仪的采样需要,每个周期采128个点计算,采样频率不超过64kHz, 这样的采样频率与S3C2410的CPU核心频率200MHz、外部数据总线频率的100MHz相比还是很低的。
因此采用AD7864的A/D转换结束信号BUSY的下降沿中断CPU,然后由S3C2410直接读取A/D转换后的数据到内存中去。没有采用外部RAM缓存A/D转换后的数据或用FIFO来对数据进行缓存,然后再由CPU读取缓存里数据的方法。电路的实际测试结果是采样频率小于100kHz时,完全可以正确无误的读取到采样后的数据,大大的简化了A/D采样部分的电路设计及节省了电路成本。与CPU的接口电路的设计如图1所示。
图1 AD7864与S3C2410的接口设
计其中AIN1-AIN8是模拟信号的输入,DATA0-DATA11是S3C2410的数据总线的低12位,EINT0接S3C2410的外部中断线的0号线,nOE是S3C2410的读使能信号,AD7864的片选直接接S3C2410的NGCS1、NGCS2,对AD7864进行读操作用BANK1、BANK2的首地址,即0x08000000,0x10000000。CONV_START是采样频率信号,可以是外部的同步采样信号,每周期采128个点,也可以是内部PWM电路产生的内部非同步采样信号。
显示屏接口电路
S3C2410自带LCD驱动器,所以显示接口的设计比较简单,使用的TFT显示屏为台湾元太的PD064VT4屏,PD064VT4屏是一款640×480的高亮TFT彩屏,其亮度为400Cd/m2,非常适合工业场合的应用,信号接口:并行 18位 RGB,每种颜色用6位信号表示。TFT显示屏与CPU的数字接口部分如图2所示。
图2 PD064VT4显示屏与S3C2410的数字接口部分
S3C2410的LCD驱动器接口是24位的RGB接口,其输出信号为VD0-VD7、VD
触摸屏接口电路
本振动测试分析仪的人机接口界面采用了电阻式触摸屏,加上采用了640×480的高亮TFT彩色液晶屏,使得人机界面很友善,操作非常方便。S3C2410自带了触摸屏的接口电路,触摸屏接口的设计比较简单。触摸屏接口电路如图3,其中YU、YL、XR、XL表示4线电阻式触摸屏的的4个接口信号。
图3 触摸屏接口电路
信号输入接口板
信号输入接口板可以接涡流传感器或磁电传感器,每个通道根据接入的传感器类型不同,处理电路有所区别,电路主要由低通、高通滤波电路,有效值转换电路等组成,输出交流的波形信号或直流信号(间隙电压或振动烈度), 信号输入接口板还包括一个锁相环电路,使AD7864的采样频率是转速的128倍,即每个周期采样128点。
信号输入接口板和底板的连接关系如图4所示。
图4 信号输入接口板和底板的连接关系
IO1-IO7是S3C2410的8个IO口线,主要用来对信号输入接口板的输出信号进行选择,首先控制是按照涡流传感器处理还是按照磁电传感器处理,然后控制是输出交流的波形信号还是输出直流信号(间隙电压或振动烈度)。
Ch01-ch08是信号输入接口板输出给AD7864去进行采样的交流或直流信号。KPH信号是转速信号,送到S3C2410的定时器去测量转速。CLK的频率是KPH频率的128倍,也即外部同步采样频率信号,通过信号输入接口板上的一个锁相环电路产生,COUT是由S3C2410的定时器对输入的CLK信号进行128分频产生,是反馈给锁相环电路的相位比较信号。
软件设计
考虑到软件只需要用单任务就可以完成所有的功能,没有必要使用嵌入式实时操作系统,另外考虑到商用嵌入式实时操作系统(如VxWORKS)的价格较贵,开源的嵌入式操作系统如Linux对开发人员的要求较高,另外也不是硬实时的操作系统,所以没有采用嵌入式实时操作系统。
本振动测试分析仪采用了640×480的TFT真彩屏,为了达到比较好的显示效果,首先编写好基本的画图函数(画点、线、圆、弧线、椭圆、矩形、填充),然后在此基础上编写了显示图片、简单窗口、下拉式菜单的函数。由于仪表的显示界面还是相对比较简单,并不需要做成像Windows视窗那样的复杂界面,所以界面显示效果还是很漂亮的,达到了预期的要求。
整体流程图如图5图6所示。
图5 整体软件流程图
图6 信号的A/D采集流程图
结束语
本文详细的说明了基于S3C2410的振动测试分析仪的硬件电路设计及软件设计过程,采用了ARM9的S3C2410处理器,较以往产品的性能有大幅度的提高。由于S3C2410的内核频率及外部总线的频率很高,自带彩色LCD驱动器及触摸屏接口,所以大大提高了FFT运算的能力,可以用于实时监测,并简化了A/D数据采集部分的电路设计和成本,另外人机接口非常的友好,界面漂亮。