基于atom与arm的在线式实时振动检测仪的制作方法

文档序号:6022926阅读:206来源:国知局
专利名称:基于atom与arm的在线式实时振动检测仪的制作方法
技术领域
本发明涉及一种检测设备运行状况的在线式机械振动检测仪。
背景技术
目前,国内外机械故障的诊断,多数采用振动诊断,大致可以分为以下四类:I)传统的在线式检测仪,综合了先进的计算机技术、传感器技术和网络技术,具有早期预测故障的能力。但是,由于系统构成复杂,操作比较繁琐,费用昂贵,故应用上受到限制。2)传统的离线式检测仪,具有适用范围广、能够对各类设备进行诊断分析的特点,是传统的在线式的良好补充;然而由于体积大、不便携带,实时性差。3)基于单CPU (Central Processing Unit)的手持式数据采集器,该类设备功能比较简单。单CPU系统受其硬件资源、算法和速度的限制,主要完成振动信号时域特征的测量,并且测试精度低,实时性差,数据存储容量小,一般无故障诊断功能,只能借助于PC机对采集过来的数据进行处理。4)基于主从式双CPU的手持式数据采集、分析器。该类系统可以充分利用前端CPU控制能力强的优势和后端CPU强大、快速的数据处理能力,可以完成对振动信号的数字滤波、时域特征检测、频域特征检测,但是缺乏友好的人机交互界面,也缺少有效的数据管理与存储功能,对复杂的多任务处理就会显得吃力。现有在线式操作复杂,费用昂贵;手持式缺乏人机交互界面,不能在线随时检测设备运行中出现的机械故障,特别是当设备工作环境恶劣,人力资源有限的情况下,手持式的应用更受到了限制。因此不能保证机械设备安全运行,易造成机械设备的损坏,给企业带来严重的经济损失。基于上述背景,本发明提出一种在线式实时振动检测仪。

发明内容
本发明的目的在于提供一种可抵抗恶劣环境,具有良好的人机交互界面、简单易用、实时性好、节省人力资源、处理能力强的振动检测仪,针对机械的运行状态进行实时在线监测。本发明的目的是这样实现的:基于ATOM和ARM的在线式实时振动检测仪,包括传感器、ARM平台和ATOM平台。其特征在于传感器与ARM平台相连,ARM平台与ATOM平台相连,传感器将设备振动信号转换成电信号,ARM平台上的A/D模块对电信号进行采样,并通过ARM处理器的控制传输到ATOM平台,ATOM平台对接收到的数据进行频谱分析,并在图形化界面上显示。ATOM平台在Linux操作系统下管理数据和开发人机界面,并可远程控制ARM处理器改变采样速率,对设备状态进行实时分析和现场诊断。ATOM平台和ARM平台之间通过串口线连接,实现对振动信号的实时处理。
有益效果本发明对比已有技术具有以下创新点:利用主从式双CPU的系统实现在线检测设备的运行状况,实时性好。使用ATOM平台作为主处理器,可以充分利用ATOM平台运行的操作系统管理数据和开发人机界面,操作简单。本发明对比已有技术具有以下显著优点:1.适用于设备工作环境恶劣的振动检测;2.无需人工巡检,降低工作量,节省时间,大大提高工作效率;3.实时性好、简单易用;4.良好的人机交互界面、处理能力强。


图1是系统整体框2是软件设计模块3是Linux内核配置界面
具体实施例方式1.硬件部分本发明的整体原理方框图如图1所示,由传感器、ARM平台和ATOM平台组成。ATOM平台采用Intel ATOM Z510处理器,搭配Intel usl5w单芯片系统控制器,相比传统x86双桥片架构功耗更低,配置更加灵活。UP-Atom510外扩常用接口和控制器,包括5个USB接口,100M网卡,1000M网卡,PS2键盘鼠标接口,音频接口,串口以及VGA接口,同时底板上还有PC104总线接口。工作过程如下:机械设备的振动信号由振动传感器转换为电信号,经A/D转换芯片转换成数字信号,直接送入ARM处理器进行存储。将存储数据经过串口线传输到远程ATOM平台,在Linux系统下对数据进行傅里叶变换,进行频谱分析,并将处理结果送人机界面进行显示,通过频谱图了解机械设备运行状况,进而进行诊断。2.软件部分2.1软系统的总体设计软件部分采用模块化程序设计方法(即系统的总体设计由各个子程序完成)和C语言编程,使得程序结构清晰,便于以后进一步扩展系统的功能。整个程序由数据采集、与串口通讯模块、频谱分析和频谱显示模块构成。系统的主模块图如图2所示。2.2开发环境的搭建安装嵌入式Linux内核及设备驱动全部源代码(光盘安装后建立完备的开发环境)。交叉编译的工具被放置到/opt/host/armv41目录下。步骤如下:(I)进入开发环境下的内核源码树,然后make menuconfig。(2)按照应用需要对内核选项和驱动模块进行选择和配置(配置界面如图5.8所示)O(3)完成自己的设置后,保存配置,退出。
(4)执行make zImage编译生成自己定制的内核映像文件,该文件会被自动复制到/tftpboot/目录下以供烧写。(5)如果需要重新编译内核,可以进入Linux内核目录,重新编译内核映像文件zlmage。先进入内核源码树,然后键入下列命令:make cleanmake depmake zlmage内核配置界面如图3所示2.3编译应用程序,生成可执行文件,然后需要将其存放到开发板Linux的ramdisk文件系统中。这就需要重新制作ramdisk文件系统映像,并烧写flash。ramdisk.1mage, gz为LINUX的文件系统映像的压缩文件。具体制作过程如下:(I)将 ramdisk.1mage, gz 移至/tftpboot 目录下,在同目录下解压为 ramdisk.1mage。(2)然后用命令mount-o loop ramdisk.1mage/mnt将ramdisk.1mage文件系统映像文件mount到/mnt/cdrom目录中。(3)进入/mnt/cdrom/bin/目录,复制应用程序的目标文件MiniM到该目录下。(4)关闭 /mnt/cdrom/ 窗口,umount/mnt/cdrom。(5)进入/tftpboot目录,在终端内键入命令gzip ramdisk.1mage压缩文件系统的映像文件成ramdisk.1mage, gz,并存放到/tftpboot/目录下。3A/D数据采集与存储模块3.1A/D转换模块初始化ARM开发平台上的A/D型号为SD16,要使SD16能够正常采集模拟量并进行转换,需要对SD16进行初始化,初始化主要是对一些相关寄存器的设置。在控制寄存器SD16CTL中写入控制字0X0114,打开SD16,可以进行转换,即设定SD16内核时钟源为系统子时钟,内部参考电压产生器关闭,不消耗功耗,关闭溢出中断允许位,选择SD16的时钟源分频因子;在控制寄存器SD16CCTLX中写入控制字0X008E,即设定转换模式为序列通道多次转换模式,过采样速率设定为256,同时指定了用于保存结果的转换存储寄存器为SD16MEM0-SD16MEM2:当转换正常结束时,转换结果写入选定的存储寄存器SD16MEMx,相应的中断标志位SD16IFGX置位。 3.2模数转换模块的初始化程序本装置选择序列通道多次转换模式。该模式对有顺序的多个通道做多次转换。转换结果将按照顺序在转换结果存储寄存器存放。对该序列的转换一直进行直到软件停止为止。模数转换模块的初始化程序如下:
#include<msp430x42x.11>void SD16init(void)
{
SD16CTL=SD16REFoN+SD16SSEL0 ;
//SD16REFON为1,选择1.2V内部参考电压 NSD16SSEL0为01,选择子系统时钟SMCLK为时钟源 SD16CCTL0=SD16SNGL+SD16IE+SD160SRx+SD16SC: //SD16SNGL为0,选择序列转换模式 //SD16IE为1,表示使能中断 HSD160SRX为oo,表示选择256过采样率 //SD16sC为1,表示使能ADC SD16INCTLO F SD16INTDLY_01 //sD161NTDLY O位oo,表示第四个采样中断
)3.3开关量采集的软件 设计本装置设计了 8路开关量采样通道,占用ARM单片机的Pl 口的Pl.0、P1.1、P1.2、卩1.311.4、?1.6端口和?2 口的P2.0、P2.1端口。采集开关量时,可直接通过扫描判断P1、P2 口输入寄存器每一位的高、低电平信号,来确定引脚电平,即开关量输入。初始化时,需要在设置P1、P2 口的方向寄存器中,设置P1、P2 口为输入状态,使用的语句为:PlDIR = OxOO ;// 设置 Pl 口为输入P2DIR = OxOO ;// 设置 P2 口为输入扫描判断Pl 口(P2 口同理)输入寄存器每一位的高、低电平信号,使用的语句为:丨€( 11嫩(^00//判断?1.0引脚电平KKinO = I ;//如果为高,则开关输入变量KKinO为Ielse KKinO = O ;//如果为低,则开关输入变量KKinO为O判断其它位的语句同理,要采集8路开关输入量,需要把8个引脚上的电平全部扫描一遍。3.4采样控制模块AD采样器THSI206的工作好坏直接影响采样数据的准确性,该模块主要完成对采样方面的工作,包括发送采样命令、接受采样数据和中断处理,这些处理主要集中在采样函数sample_one_point O里完成,其主要代码如下所示
Void sample_one_point(unsigned char *pbuffer)
{
P2=0x8f / /模拟开关地址设置
convst=0; / /发送采样命令;
convst_ad=0;
convstad= I ;
convstad= I ;
Pbuffer
=Xbyte(PORT_AD);//读取数据 Pbuffer[l]=Xbyte(PORT_AD); Pbuffer[2]=Xbyte(PORT_AD); Pbuifer[3]=Xbyte(PORT_AD);
}模拟开关的地址选择通过P2 口设置,AD采样器的采样命令通过向CONVST引脚信号置一个负脉冲完成。数据的读取通过XBYTE指令完成。低四位与8255的选通引脚相连,它实际上是将8255置于不选通状态,同时MOVX指令P3.7引脚上出现RD有效信号1,RD又与THS206的RD相连,而且THS206的触发级别为4,这样就连续读出四路采样结果数据。再改变模拟通道地址,这样就读出总共32路采样结果数据。

3.5数据存储模块:数据存储模块主要任务是完成在采样存储工作方式下的FLASH存储器的数据的读取、载人和编程。数据读取函数是rbyte32(),其主要代码如下所示:Void rbyte32(unsigned long p—flash,unsigned char *pbuffer) {
unsigned char i; whlle(flash_ready: =0)j for(l=0ji<32: i++)
(
XBYTE[PORTA_8255]={unsignedchar)P_flash; xB YTE[PORTB_8255]=(unsigned char)(P_flash 8); xBYTE[PORTC_8255 l=(unsigned char);
((p—flash l 6)&0X00000003);· }数据读载入函数是w32byte_sector(),其主要代码如下所示:·
下面是代码程序:Void w32byte—sector(unsigned long p flash,unsigned char *pbufFer)
{
unsignea char P_sectorbyte;
P_sect01byte=(unsigned char)P_flash; for(i=0;i<32;i++)
{
XBYTE[PORTA_8255]=p_sectorbyte;
PO=pbuffer[i]; nce_flash=0; nwe_flash=0; nce_flash=l ; nwe_flash=l ;
Psectorbyte++ ;
}当载人8个32路信号的采样点数据后,FLASH的256字节缓冲区被写满,必须将这256字节的数据编程到FLASH中去,其编程的平均时间为10ms,大于采样间隔2.5ms,所蹦在编程完成以前就要开始下一次的采样,而且在一次编程期间,FLASH缓冲器中的256个字节数据不能被修改,否则这256字节的数据就要重新编程,所以就要利用单片机内部所设置的数据缓冲区来暂时存储采样数据。在FLASH编程期间,系统将采样4个点(32路),数据缓冲区的大小可以存放5个点(32路)的采样数据,还剩一个点的数据存放空间,由于FLASH的载人时间纳秒级,远小 于采样间隔,所以可以在一个采样间隔内将暂存的4个点数据载人FLASH,释放单片机数据缓冲区的空间。3.6与串口的通信模块与串口通信模块主要完成单片机通过并行接口和计算机进行采样数据的传送。在数据发送模式和采样发送模式下都需要向ATOM平台传送采样数据,但两种模式下的并行接口处理略有不同,下面是两个传送函数的程序代码:数据发送工作模式:void sendpc~one_point(unsigned charHp wbuffer )
{
unsigned char i; for(i=0; i<32;)
{
xBYTE[PORTB_8255]=pwbuffer[i]; while(ndatastkepp= I); if(nwyir_epp=0)
{
i=0;
nwait_epp=l;
}
}4串口通信模块4.1系统启动后,ATOM平台与ARM平台将以事先约定的通信协议和数据传输协议进行通讯。其中,通信协议是为保证上下位机通讯成功而达成的握手协议;数据传输协议是上下位机问的通讯数据包格式的约定,分为上传数据包格式和下传数据包格式。上传数据包是下位机从现场采集的数据打成包后通过串口传输到上位机的;下传数据包是上位机往下位机传送的配置信息指令包。(I)通信协议上位机通过COM串行端口设备与下位机进行通信,利用串口线来完成数据的传输和接收的功能,并且相互之间达成自定义的简单通信协议。本系统采用COMl端口来实现通信,只需对串口实行一定的参数配置,即可完成数据的传输功能。其简单的通信协议。(2)数据包传输协数据传输协议是上下位机的通讯数据包格式的约定,是下位机从现场采集的数据打成包后通过串口传输到上位机的。数据包由三个子包构成,分别是:通道I快变数据子包、通道2快变数据子包、缓变 数据子包。其中1、2通道快变数据子包中格式化存放的快变数据即指传感器采集的振动信号加速度值,缓变数据指下位机采集卡的电池容量。注意,数据包格式的约定包头和包尾都还需要有校验码,以防数据包读取出错。本数据包格式包头校验码是AA,包尾校验码是两个DD,DD0当然为了保证数据包的连续性每个包还需要有包号和通道号。数据包大小为12个字节,具体约定格式见下表I表I数据包格式表
权利要求
1.基于因特尔凌动ATOM和友善之臂ARMmini2440的在线式实时振动检测仪,是一种在线式实时检测系统,包括传感器、ARM平台和因特尔凌动ATOM平台。其技术特征在于传感器与友善之臂mini2440平台相连,友善之臂mini2440平台与因特尔凌动ATOM平台相连,传感器将设备振动信号转换成电信号,ARM平台上的A/D模块对电信号进行采样,并通过友善之臂mini2440处理器的控制传输到因特尔凌动ATOM平台,因特尔凌动ATOM平台对接收到的数据进行频谱分析,并在图形化界面上显示。
2.根据专利要求I所述的在线式实时振动检测仪,其技术特征在于其所述的因特尔凌动ATOM平台在Linux操作系统下管理数据和开发人机界面,并可远程控制友善之臂mini2440处理器改变采样速率,对设备状态进行实时分析和现场诊断。
3.根据专利要求I所述的在线式实时振动检测仪,其技术特征在于其所述的因特尔凌动ATOM平台和友善之臂ARM mini2440平台之间通过串口线连接,实现对振动信号的实时处理。
全文摘要
本发明提供一种用于检测设备运行状况的在线式实时振动检测仪,是基于新兴的英特尔ATOM平台和比较成熟的ARM嵌入式技术所开发的。该发明首先通过ARM平台上的A/D模块进行数据采集处理,将振动模拟信号转化为数字信号,然后将数字信号通过串口传输到ATOM平台上,在此平台上使用图形界面对进行频谱分析后的数据进行显示,便于诊断。其优点是无需人工巡检,提高工作效率,实时性好,具有良好的人机交互界面,处理能力强,简单易用,适用于环境恶劣下的设备振动检测。
文档编号G01H17/00GK103115665SQ201110364710
公开日2013年5月22日 申请日期2011年11月17日 优先权日2011年11月17日
发明者黄丽莲, 王明哲 申请人:王明哲, 黄丽莲
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1