铁路与轨道交通 |
|
| 按行业筛选 |
|
|
| 按产品筛选 |
|
|
| |
查看本类全部文章 |
| |
|
|
|
基于LabVIEW和PXI的转向架测试平台 |
|
作者:大连铁道学院 姜宏志 |
|
应用领域: 院校使用的产品:美国NationalInstruments 的LabVIEW 6.1软件和PXI-1000、PXI-1001、PXI-1002 、PXI-8330 、PXI-6070E 、PXI-6071E 、SCXI-1520 、SCXI-1531 、SCB-100、SCXI-1314 等硬件设备。
挑战:快速建立能够进行城市轨道车辆转向架零部件特性测定和动力学性能测定的高性能测试平台。
应用方案: 使用美国National Instruments 公司的PXI 测试设备和LabVIEW6.1 软件建立基于虚拟仪器技术的转向架测试平台;同时,开发出相应的后期分析处理软件。
介绍
在城市轨道车辆转向架测试中,需要测量大量的应变、电压和加速度等信号,这不仅要求数据的高速实时采集而且也要设备具有很高的稳定性和可靠性。使用美国National Instruments 高效可靠的PXI 总线设备和LabVIEW 快速图形开发环境,快速建立起的多功能转向架测试平台。实践应用证明,完全达到了系统设计时的各项要求。
基于PXI 总线的系统架构系统结构如图1 所示,这是一个由信号采集与调理模块(SCXI-1531、 SCXI-1520、SCB-100 )、PXI 数据采集卡(PXI-6070E、PXI-6071E)和PXI 接口卡(PXI-8330,采用MXI-3 技术)组成的数据实时采集系统。在这个系统中,由于采用了PXI和MXI-3总线技术,因此能够充分保证实时数据采样时的带宽要求。
图1 系统结构图 PXI 和MXI-3 技术
PXI 是1997 年NI 公司发布的一种全新的开放性、模块化仪器总线规范,是PCI 在仪器领域的扩展(PCI eXtensions for Instrumentation) 。它将CompactPCI 规范定义的PCI总线技术发展成适合于试验、测量与数据采集场合应用的机械、电气和软件规范,从而形成了新的虚拟仪器体系结构。制订PXI 规范的目的是为了将台式PC 的性能价格比优势与PCI总线面向仪器领域的必要扩展完美地结合起来,形成一种主流的虚拟仪器测试平台。MXI-3 技术是一种PCI总线之间的软硬件透明的高性能连接技术,不仅可以进行PXI/CompactPCI 机箱之间的连接而且可以让主控计算机通过透明的软硬件连接实现对PXI 系统的直接控制。MXI-3 技术也提供了最高可达1.5Gb/s 的串行数据连接。
该转向架测试平台采用具有PXI 和MXI-3 技术的NI公司产品建立测试系统,与使用传统的测试技术相比,不仅具有更高的性价比,而且使用也更加简便、灵活,特别是其信号调理模块具有完全的程序可控性,这些特点都为快速组建成本低廉、功能强大的测试平台提供了前提条件。
系统的软件设计
“软件就是仪器”,软件设计已经成为了基于虚拟仪器技术的测试系统的关键环节。尤其是对于采用了NI 公司的PXI 测试设备的测试系统,硬件的使用难度已大大降低,在其上所耗费的时间已越来越少,因此能把更多的精力投入到软件的系统开发上。
在本系统开发中,我们采用LabVIEW 作为编程语言。LabVIEW 图形化编程语言具有简单易用、功能强大等优点,它能与NI 公司的硬件设备达到无缝结合,是首选的开发工具。
本系统分为实时测试子系统(图2)和数据处理与回放子系统(图3)。实时测试子系统实现多通道测试信号的实时采集、存储和监视。数据处理与回放子系统实现数据的事后回放和分析处理。
图2 实时测试子系统 在转向架动力学性能测试过程中,需要测试的参数多达数十个,因此,测试信息管理就成为实时测试必须面临的任务。测试信息主要包括硬件配置信息和数据处理信息,前者主要用于硬件的物理设置如电桥的激励电压,后者用于数据显示之前的变换处理如加速度传感器的灵敏度系数。在本系统开发过程中采用了面向对象技术和“ 多层”体系结构来解决复杂的信息管理等问题。
图3 数据采集与回放子系统 如图4 所示,系统纵向分为用户界面层、业务逻辑层和数据服务层。用户界面层实现数据显示以及接收用户的输入信息并进行必要的校验。业务逻辑层负责数据信息的转换和控制。数据服务层提供与硬件进行交互的读写功能,包括硬件参数的设置、数据文件的保存和读取。这种“多层”结构有利于系统的维护和功能的扩展。
图4 软件体系结构 应该说, NI 公司的NIDeveloperZone 为编程人员提供了许多的编程思想,给予了很多编程灵感。LabVIEW 语言,其本身没有明确支持的面向对象技术, 但可以用DataLogFileRefnum 控件作为对象引用等来间接实现面向对象技术。对象使用方法如图5 所示,首先创建对象,然后调用并执行它的方法,使用完毕后将其释放,在此过程中,需要传递由创建对象VI 输出的对象引用,以保证对象方法VI 的顺利执行。
图5 对象创建与调用 面向对象的图形化编程
有以下优点:
1. 更安全地使用数据。
一般地,要在不同VI 下使用同一数据需要使用全局变量,但“赤裸裸”的全局变量既不利于数据的并发控制,也不利于系统的维护与扩展,稍不小心将导致程序的运行错误。而使用面向对象技术,由于数据是被封装的,必须使用对象的方法来调用内部数据。因此,可以在对象的方法中,建立数据保护和屏蔽,实现数据的并发控制,使系统更加安全;同时也有利于系统的维护与扩展。
2. 实现“拉进式”的程序结构。
每个数据传送都有两个参与者,供应者(supplier)产生并发送数据, 而使用者( consumer) 则接收和处理数据。根据谁发起数据的传送, 可分作两个类型。
在“ 推出式”(push)类型中,供应者发起数据传送。而在“拉进式”(pull)类型中,发起人是使用者。在LabVIEW 中供应者和使用者可以是控件也可以是子VI,其中子VI 更多一些。对于某个子VI 来说,若只有少量输入参数可以直接连入即可,但对于大量输入参数时或者就不知将用到什么参数信息时,这时使用传递对象引用就显得方便多了。在程序中,我们创建了一个信息服务对象,集中存储和管理各种配置信息和参数信息,在每个子VI 中,我们将这个信息服务对象的引用传递进来,而后,子VI 根据自身的需要调用信息服务对象的方法获得所需要的数据。“拉进式”程序结构的优点:有利于使LabVIEW 图形化程序更加简洁、高效;有利于系统的维护与扩展;有利于建立统一的程序接口。
3. 可应用现已成熟的各种设计模式来实现高级功能。
在面向对象技术中有许多成熟的设计模式可以实现程序的快速开发, 把其应用到LabVIEW 中不仅减少了开发时间,而且可以实现一些高级功能。比如,应用对象持久技术,在实时测试子系统中,使测试的全部信息得以集中保存,而在事后处理与回放子系统中,将测试信息对象从已保存的信息中恢复回来,为数据分析和处理提供信息服务。
在LabVIEW 中综合应用以上两种技术,得到如图6 所示简化的实时测试子系统的框图程序。InputCheck 子VI 进行用户输入信息的校验。New子VI 创建信息服务对象并对其进行初始化。DAQStart 子VI 负责硬件参数的设置,其所需硬件配置信息如采样率等参数皆可通过调用信息服务对象的方法获得。
RealDisplay 子VI 管理数据的转换和实时显示,它所需要的传感器灵敏度等参数信息也可以从信息服务对象中得到。在程序最后, 由ClassPersist 子VI 将信息服务对象的信息“持久化”到文件,以便在数据后期处理时使用。
由此可见,应用面向对象技术和“多层”结构,对于优化程序结构、提高程序的灵活性是很有帮助的。
数据显示与控制
数据的准确实时显示是实时测试的另一重要任务。这里采用“总-分”的显示策略。如图2,“总”是将所有通道在下面的控件数组中进行分类显示。“分”是当选中某个特定通道时在上面的波形显示控件中描绘出来。
在框图程序编程时,将各个显示控件的引用传递到一个RealDisplay 子VI 中(如图6)通过其进行显示的集中控制。这样既实现数据的显示也可以控制显示控件的属性,实现更好的交互性。在图2 中,波形显示控件的PlotLegend 面板显示了波形与通道的对应关系,它就是通过对波形控件的属性进行控制而实现的。
图6 实施测试子系统的框图程序 结论
应用美国NI 公司LabVIEW和PXI 等先进的虚拟仪器技术快速建立起城市轨道车辆转向架测试平台,将面向对象的编程技术和“多层”体系结构应用到测试程序开发上,提高了系统的可维护性和可扩展性。(end)
|
|
文章内容仅供参考
(投稿)
(如果您是本文作者,请点击此处)
(5/31/2005) |
对 铁路与轨道交通 有何见解?请到 铁路与轨道交通论坛 畅所欲言吧!
|