>
首页 » 技术文章 » 基于USB接口的轨道机车轮轴无损检测系统

基于USB接口的轨道机车轮轴无损检测系统

作者:刘志新,韩霜,姜长泓  时间:2007-02-26 09:09  来源:

摘要:通用串行总线USB已经成为PC的标准接口,它可以实现高速的数据传递。本文研究了USB接口的结构、特点和USB软硬件系统的开发方法,设计了基于USB接口的轨道机车轮轴无损检测系统。该系统具有功耗低、数据传输速率高、使用方便的特点,满足了工程的实际需要。

关键词:通用串行总线;数据采集;无损检测

火车作为一种主要的运输工具,其工作环境比较恶劣,作为其行走部件的车轴、轮箍、车轮、轮对轴承等,更是受到撞击、循环应力、摩擦、高低温等作用力,因此磨损、裂纹、剥离等损坏现象十分常见。我国铁路运输长期以来一直处于低装备率、高使用率、高强度运输状态,并且经过了几次提速,致使机车行走部件的磨损日益严重,铁路运输的安全性受到严重考验。因此开发轮轴自动在线无损检测系统将是一项十分必要的任务。

在机车无损检测的诸多方法中,声发射检测法具有检测速度快、反应直观、适应性强、可以实现在线检测的优点,克服了磁粉探伤安全性差、可行性低,以及超声波探伤对于干扰和缺陷回波信号分辨率低的缺点,因此声发射检测法已经成为机车无损检测的首选方法。它的基本工作过程就是利用声发射传感器检测金属在被破坏前一瞬间发出的微弱超声波,经过放大,再由计算机处理,以达到无损检测的目的。

由于受机车运行时环境的影响,以及出于对大量数据处理的考虑,本系统的主机采用便携式电脑,将采集的信号数据以串行方式传递到主机。然而,常规串行通信虽数据传递距离远但传递速度慢,不利于数据的实时处理。现在便携式电脑普遍配置了USB(Universal Serial Bus)接口,设计基于USB接口的无损检测系统解决了上述的困难。基于USB接口的无损检测系统采用低功耗设计,而且利用USB挂起状态特性,可极大地降低系统的功耗,使检测系统不仅数据传递速度快,而且可以直接利用便携式电脑的电源,使系统整体结构简单,使用方便。

一、 USB接口

1)USB简介

USB(Universal Serial Bus, 通用串行总线) 是Compaq, DEC, IBM, Intel, Microsoft, NEC和Northern Telecom等七大公司于1994年11月联合开发出来的计算机串行接口总线标准,1996年1月15日颁布USB1.0版本规范(Universal Serial Bus Specification Revision 1.0),1998年10月公布了1.1版本,修补了1.0版本中的问题。其主要内容可归纳如下:

(1) 两种数据传送速度:高速模式12Mbps(连接电缆为屏蔽双绞线),用于连接打印机、扫描仪、交换机和电话等设备;低速模式1.5Mbps(连接电缆为普通双绞线),用于连接键盘、鼠标和调制解调器等设备。

(2) 可通过层式星形拓补结构(最多5级)最多连接127个(含HUB)外部USB设备。

(3) 最长可连接结点(end-point)距离:5m。

(4) 连接电缆为4芯电缆:2条信号线,2条电源线(具体见表1)。

1 USB连接电缆管脚描述

USB2.0版本规范(Universal Serial Bus Specification Revision 2.0),于2000年4月27日由Compaq, Hewlett-Packard, Intel, Microsoft, NEC和Philips正式对外发布。USB2.0除兼容USB1.1外,主要新增加了:数据速率最高可达480Mbps;支持高清晰数字会议系统设备、高速高密存储设备、新一代更高速高分辨率彩色打印机及扫描仪、宽带ADSL和Cable Modem等。

2)USB接口的其它特点

除了上述特点外,USB接口与计算机原有的接口相比,还具有十分明显的特点:

1)设备容易安装和配置USB为所有的USB外设提供了单一易于操作的标准化接口,简化了USB外设的接口设计。无论哪种USB设备都可以不必打开机箱以及关闭计算机就可以从任一个USB端口插入或拔出,计算机系统自动检测插入或拔出的USB设备,并通过自动加载相关的驱动程序来配置所安装的USB设备,使其正常工作。

2)速度快。USB2.0规范有高速、全速和低速三种模式,以适应不同类型的外设。低速模式的传递速率比串行接口快十几倍,比标准并行口也快十倍。在高速和全速模式时,传递速率更快,足以满足大多数场合下的高速数据传输的需求。

3)总线供电USB在设备供电方面提供了灵活性。USB设备可以通过USB电缆供电,也可以通过电池或者其它的电力设备来供电,或使用两种供电方式的组合,并且所有的USB设备都支持节约能源的挂起和唤醒模式。USB总线能够提供最大电流达500mA的5V电源,这样对于一些小功耗的USB外设,可以直接利用总线上的电源,而无需单独使用电源供电。

4)多种传输模式USB提供了控制传输、同步传输、中断传输和批量传输四种不同的数据传送模式。

二、 硬件设计

机车轮轴无损检测系统的硬件原理框图如图1 所示,它能通过声发射传感器采集机车行走部件发生缺陷时产生的微弱超声波,经过信号放大、A/D转换、数据存储和传输后,由主机分析处理。其中A/D转换后的数据直接通过DMA方式传输到采集板的内存,因此,数据采集的速率可以达到很高,而对微处理器的性能要求不高。

1 轨道机车轮轴无损检测系统原理框图

采集板的USB控制器采用的是Intel公司的80930AD,它内嵌MCS251微处理器,使用与MCS51兼容的MCS251指令系统,具有1kB片内RAM,支持256kB外部程序/数据存储器。80930AD有一个USB接口,11个中断源中具有三个USB中断源,当输入频率为12MHz时,USB可以工作在全速和低速模式,本系统设计的USB接口工作于全速模式。在数据采集控制中,采集板控制器接收到主机进行数据采集的命令后,先根据主机传输的信息设定系统的采样频率和触发电平,然后控制电路启动数据采集,此时采集的数据通过DMA方式被循环存入到前端内存部分。当放大后的反射信号电压大于触发电平时,触发控制信号有效,其后采集的数据存入后端内存中,内存存满后,停止采集。控制器获得采集结束信号后,将触发前信号数据和触发后信号数据通过USB接口传输到主机中。

三、 软件设计

轨道机车无损检测系统的软件设计主要包括数据采集板的控制和USB通信软件、主机USB设备驱动程序、主机数据分析和处理软件。本系统的数据采集控制和USB通信软件的主要功能是控制数据采集以及通过USB接口与主机进行数据通信。主机数据分析与处理软件是将声发射传感器采集的数据进行分析处理,自动判别机车行走部件的磨损情况。主机USB设备驱动程序是实现主机与采集板连接和数据通信功能。下主要分析本系统的USB软件设计,它包括主机的USB设备驱动程序设计、采集板的USB设备程序设计和USB应用程序设计。

1) USB设备驱动程序设计

主机中的USB设备驱动程序必须遵循微软公司在Windows98及其以后版本中所定义开发的Win32驱动程序模型(WDM)。WDM驱动程序是PE格式的,但是它却没有Win Main或Main这样的入口,取而代之的是Driver Entry。在Driver Entry中向操作系统登记并注册一些消息处理器,而且还要指明是否对驱动程序输入输出的数据进行缓冲;另外还要提供一个Add Device例程来把驱动程序添加到驱动程序堆栈中,并且为各种请求,如IRP_MJ_CREATE,IRP_MJ_WRITE,IRP_MJ_CLOSE,IRP_MJ_READ,IRP_MJ_DEVICE_CONTROL,IRP_MJ_PNP等指定各自的处理例程。

DriverEntry(IN PDRIVER_OBJCET DriverObject,…)

//驱动程序入口

{

DriverObject -> DriverExtension > AddDevice = XXAddDevice;

//XX对应自己给驱动程序的命名

DriverOvject -> DriverUnload = XXUnload;

DriverOvject -> MajorFunction[IRP_MJ_CREATE]=XXDriverCreateClose;

DriverObjcet -> MajorFunction[IRP_MJ_CLOSE]= XXDriverCreateClose;

DriverObject -> MajorFunction[IRP_MJ_READ]=XXDriverReadWrite;

DriverObject -> MajorFunction[IRP_MJ_WRITE]= XXDriverReadWrite;

}

在设计的过程中一定要注意函数的可运行级别,比如有的函数只能在PASSIVE_LEVEL下运行,有的函数则可以在DISPATCH_LEVEL以下级别运行。级别越高的时候,,对代码的要求就越严格,比如在DISPATCH_LEVEL的时候就不能使用分页内存。通常情况下应该尽可能让代码在低运行级别如PASSIVE_LEVEL下运行,在高级别下运行过长时间将导致系统效率降低,影响系统响应的实时性。相对于连接到传统PCI总线上的设备驱动程序,USB设备驱动程序从来不直接操作硬件,而是生成一种数据结构对象,即USB请求块(URB),发送到下层驱动程序。USB设备通过USBDI向下层驱动程序发送USRB。USBDI是微软Windows操作系统USB驱动程序分层体系的一部分,在体系中的位置如图2所示。USBDI是基于IRP的接口,它把单独的请求封装成WDMI/O请求包(IRP),并发送到下层驱动程序的设备对象。

2 USB Windows驱动程序模型的一部分

2) 采集板USB设备程序设计

USB设备程序编写是和硬件相关联的,数据采集板USB控制器80930AD使用与MCS51兼容的MCS251指令系统,由于MCS51是许多开发者已经熟悉的结构和指令集,而且具有大量的开发软件包和编程范例等,因此减少了编程难度,节省了开发时间。Intel公司和第三方为开发者提供了一个完整的硬件和软件开发工具,Keil和IAR等公司提供了具有ANSI C交叉编绎器、汇编器、连接器/定位器、调试器和仿真器的软件开发工具,利用这些开发工具能方便开发USB设备程序,结合WinDriver的硬件探测器和调试器将使USB设备程序调试更方便。

3) USB应用程序设计

主机应用程序是数据实时采集系统的中心,采用VC++6.0编程。其功能主要有:开启或关闭USB设备、检测USB设备、设置USB数据传输管道、设置A/D状态和数据采集端口、实时从USB接口采集数据、显示并分析数据。USB程序主框图如图3所示。

四、 结束语

USB为计算机外设提供了一个全新的接口标准,它使得外设有了即插即用、自动配置的能力,并标准化了设备连接,USB总线拓扑结构大大补充了计算机可以连接的外设的数量。USB2.0标准更是将数据传输速率提高到了一个新的高度,为研发新的、高性能且廉价的外设提供了基础。目前,USB设备的开发和应用在国内外处于高速发展阶段,具有广阔的发展前景。

基于USB接口的轨道机车轮轴无损检测系统是USB在数据采集中的一个应用,利用USB接口的优点,极大的降低了采集板的平均功耗,消耗便携电脑的电池能量很少,因而利用本系统检测机机车行走部件能工作较长时间。

3 USB应用程序主框图

相关推荐

基于Web的MCF5249数据采集系统的设计

Web  MCF5249  数据采集  2011-08-18

探地雷达信号的数据采集与显示研究

数据采集  探地雷达  2011-08-18

多路跟踪滤波同步数据采集系统的研究

AD73360L  数据采集  2011-08-01

为铁路谐波干扰的研究搭建一个数据采集和监控系统

数据采集  2011-07-25

基于LabVIEW的外置串口采集控制卡的研制

LabVIEW  数据采集  2011-06-20

NI协办首届全国虚拟仪器设计大赛圆满落幕

在线研讨会
焦点