现代旋转机械设备现代化程度日益提高,结构日益复杂,需要考虑更复杂的运行状态、工艺参数及工作环境,较简便的监测技术已不足以反应设备的运行状况,传统的基于8位或16位的单片机或RISC CPU的仪器系统也已逐渐不能满足大数据量的快速处理的要求。以ARM为核心的32位微处理器S3C44B0x正以其高运行速度、大存储量在本领域得到逐渐广泛的应用。
在机械故障诊断中,可用于监测与诊断的信息很多,包括振动、温度、压力、声响和变形等,在众多信息中,振动信号能够更迅速、更直接的反映大型旋转机械设备的运行状态,因此利用振动信号对机组运行状态进行诊断分析,是设备故障诊断方法中最有效、最常用的方法。在机组的运转中,振动信号是机械设备故障诊断的重要信息载体,基于振动信号的时域、频率特征提取分析法已发展成为一种实用的故障诊断方法。
因而对振动信号的采集和数据处理是机组状态监测及预测技术研究的重要内容。研制基于嵌入式ARM处理器的多路振动监测仪器,是对面向旋转机械监测、分析、诊断、预测等学科的推进。
1系统构成
整个硬件构成如图1所示,传感器采集到的信号经过调理,包括放大、隔离、滤波和线性化处理,通过多路开关选择进入A/D转换器进行转换,然后由8255A缓冲后进入S3C44BOX,进而进行数据的存储和波形的显示。

选择的S3C44B0x具有ARM处理器的所有优点:低功耗、高性能;同时又具有非常丰富的片上资源,非常适合嵌入式产品的开发。其特点如下:采用ARM7TDMI内核, I/O电压3. 3 V,内核电压2. 5 V;内置锁相环(PLL),系统主频最高达66MHz; 4种工作模式,可以实现电源管理以降低系统功耗; 8 KB的系统高速缓存,极大地提高了系统运行速度;支持8个memory bank,最大外部存储空间达256MB,并支持SDRAM;内置彩色LCD控制器; 2路异步串口(UART); 71个通用I/O口; 8通路模/数转换器(ADC);实时时钟(RTC)和看门狗电路(WATCH2DOG)[1~3]。
选择的A/D转换采用的是AD574A,该芯片为美国模拟器件公司生产的12位逐次逼近型快速A/D转换器。可在40μs内完成一次模数转换,转换精度≤0. 05%。芯片内有高精度的参考电压源和时钟电路,所以不需要外接时钟和参考电压就可以正常工作。可以有单极性输入和双极性输入两种工作方式[4]。由于S3C44B0x和AD574A接口的控制逻辑不尽相同,因此,选用uPD8255Ac-2作为缓冲。
在研发过程中对本特立(bently公司生产的ro2torkit)实验台进行状态监测,在实验台上已集成可分别对旋转机械的轴进行X向、Y向和Z向3个方向的加速度信号进行采集的传感器,并且已将输出电压范围调至-5 V~+5 V。在实际应用中采集的电压可通过查本特立实验台的手册将电压值转换为轴向加速度值。
因此,要基于S3C44B0x设计能够采集-5 V~+5 V之间电压的硬件电路。
2硬件设计
2.1接口电路设计及工作原理
A/D转换的接口电路如图2所示。

由图2可见,AD574A通过8255A与主机相连。不需要其他的附加逻辑电路。ARM系统完成I/O功能的标准方法是使用存储器映射I/O。当从这些
地址加载或向这些地址存储时,它们提供I/O功能。典型情况下,从存储器映射I/O地址加载用于输入,而向存储器映射I/O地址存储用于输出。在实际的应用中,将任何存储设备或是I/O设备接到处理器上,一般都会通过处理器的系统总线。Bank并非实际存在的,可看作由地址线的A24A25A26译码的逻辑空间,只要将CPU上相应的Bank连线接到外设芯片的片选引脚上,便可根据相应的地址进行存储器或外设操作了,当存储器地址在相应段的地址区域时被激活,存储周期和段尺寸可编程。主机只需两根地址线(A2,A1),同时,将8255A的接口安排在S3C44B0x的Bank4 (即地址范围0x08000000~0x09FFFFFF),而且S3C44B0x具有内部译码器,直接产生片选信号nGCS4,就可以确定数据端口A, B, C以及控制字寄存器端口的口地址分别为0x08000000, 0x08000002, 0x08000004和0x08000006。另外,还有几个关键的控制信号线需要连接。其中读、写信号连接S3C44B0x的nOE和nWE。8255A的数据总线缓冲器是一个双向三态的8位缓冲器,用作8255A和系统数据总线之间的接口,通过与之相连的8位数据总线D0 ~D7与S3C44B0x的低8位数据线D0~D7,接受CPU送来的数据和控制字,AD574A送来的数据也是通过这个数据总线缓冲器送给CPU。设置8255A的A口的低4位和B口连接AD574A的12位数据线,工作于方式0,输入,用来读取转换后的12位数字量。C口的PC7连接指示转换状态的STS信号线,用于判断某次A/D转换是否完成,因此,上半部分为输入。其下半部分设置为输出,用于输出控制信息,启动AD574A转换或发出读取结果数据命令。其中启动转换和读周期时序是通过软件来模拟的。在编写程序的过程中必须严格遵照其时序逻辑。AD574A工作于12位转换方式,输入电压可以是-10 V~+10V或者-5 V~+5 V之间。采用双极性输入。模拟信号经放大滤波后,从10 VIN或20 VIN引脚输入。R1和R2分别用于零调整和满量程调整。
2.2时序匹配
由前面所述,在实际应用中要根据接口芯片的时序(如图4)来设置S3C44BOX的总线周期,是通过设置BANKCON4寄存器来完成的(如图3)。


其中Tacc=14(时钟周期) Tacs=2(时钟周期) Tcos=2(时钟周期) Tcah=2(时钟周期)。通过以上设置,当机器的时钟频率为60MHz时,Trc可达300 ns,Tacc可达212 ns。

S3C44BOX处理器的写总线操作过程,首先系统的地址总线上给出需要访问的I/O空间的地址A1,A2。在经过Tacs=2后,片选信号也相应给出,被片选信号选中8255A此时应该锁存住当前地址线上的地址信息。再经过Tcos=2后处理器给出当前操作类型是写操作,相关器件在Tacc=14时间内将数据准备好,放在数据总线上。当经过Tacc后,处理器将nWE信号拉高,同时锁存数据线上的数据。在经过Tcah=2后nGCS和地址信号都将失效。这样,一个读操作就完成了。读总线和写总线非常类似,所涉及的时间变量在处理器中都是可以由软件设置并更改的。

3硬件设计的实现及检测部分软件设计
由于S3C44B0x的I/O口多数都是多功能口,首先要进行初始化设置各个引脚工作在哪个功能模式下,这部分在Port_INIt()函数中完成。S3C44B0x为了与8255的读/写时序进行匹配,对其BANK2CON4寄存器的操作时序进行如下设置:

三通道振动监测的数据采集部分软件实现采用移植行好的C语言进行编程,其中启动转换和读周期时序是通过软件来模拟的。在编写程序的过程中必须严格遵照其时序逻辑。然后将采集到的数据存储到二级显存中,再在后台进行绘图,这部分主任务中来完成。由于在S3C44B0x移植了μC/OS-Ⅱ操作系统。因此,可以将LCD显示部分放在一个单独的任务中,液晶屏的刷新是通过Lcd_Fresh_Task任务来完成的。其流程如图5所示。
4硬件平台的检测实验
在实际开发中,已把本特立实验台的振动信号通过调理电路调至-5 V~+5 V,因此选择10 VIN引脚接输入电压。所以设计以下实验测量采集系统对-5 V~+5 V间电压的测量结果。
实验硬件装置: -5 V和+5 V电压源,滑动电阻器,电压采集板, S3C44B0x以及Jtag调试器,万用表。
软件环境: SDT2. 5集成开发环境,AXD调试环境,μC/OS-Ⅱ
在实际检测中,在-5 V~+5 V调电压从S3C44B0x内存中查看其测量值并转换成电压值记录结果,然后与万用表的测量结果进行比较。
在实际采集的结果转换时,由于采用双极性输入方式,结果要采用如下公式进行转换:
![]()
其中VJ———转换后所得的电压,单位:V,x———由AD574A数据线读得的转换结果,无单位, 5 or10———10VIN or20VIN输入脚,如用10VIN输入脚读得的AD574A数据线的转换值为AA0H,则x=AAOH,x0=800 V,y=7 ffH,代入公式即得为VJ=1. 64 F
最后调电压至1. 6 V后从S3C44B0x内存中查看其测量值并显示其一段时间的波形。如图6所示。

5结论
所开发的多通道振动监测硬件平台运行可靠稳定。设计过程中,充分考虑了仪器硬件与软件系统的协调统一,能保证系统对时域信号的高精度、高速度的采集要求。同时,将显示屏与采集部分集成在同一款处理器上,避免传统的上下位机的采集模式,使系统的硬件结构简化,体积减小,一体化程度增强,且系统的更新升级和功能扩展极为容易。对本系统的实时在线分析,以及智能化预示等方面尚待进一步研究。
参考文献:
[1]李 岩,荣盘祥.基于S3C44B0x嵌入式uCLinux系统原理及应用[M].北京:清华大学出版社, 2003
[2]王田苗.嵌入式系统设计与实例开发-基于ARM微微处理器与μC/OS-Ⅱ实时操作系统[M].北京:清华大学出版社, 2005
[3]胥 静.嵌入式系统设计与开发实例详解-基于ARM的应用[M].北京:北京航空航天大学出版社, 2005
[4]吴秀清,周荷琴.微型计算机原理与接口技术[M].合肥:中国科学技术出版社, 2002
作者简介:周进节(1981- ),男,湖北天门人,北京机械工业学院机械工程系硕士研究生,主要从事旋转机械智能化故障诊断与绿色设计方面的研究。




