轨道车辆横向稳定性与平稳性判别安卓APP的实现
2016-03-18包立麒王佳宁
包立麒 王佳宁
轨道车辆横向稳定性与平稳性判别安卓APP的实现
包立麒1王佳宁2
1.上海工程技术大学城市轨道交通学院,上海 200335 2.上海工程技术大学电子电气工程学院,上海 200335
轨道车辆运行的平稳性是评价其运行品质的重要指标。课题根据我国轨道车辆平稳性评定标准,开发了评定轨道车辆平稳性的手机应用,使乘客易于获取所乘轨道车辆的平稳性参考信息。软件选择了使用安卓系统的智能手机作为载体,硬件层面利用了智能手机内部集成的加速度传感器,陀螺仪等传感器进行加速度信号采集,监测程序采用Java语言开发。
轨道车辆;平稳性;加速度传感器;安卓
引言
智能手机具有高普及率,优秀的运算性能且集成多种传感器的特点。人们在生活中已习惯于借助智能手机获取各种资讯,例如天气,地理位置,空气质量等。轨道车辆作为常见交通工具,其运行平稳性、舒适度与人的生活息息相关[1]。本文设计与开发了运行于使用安卓系统的智能手机,利用其集成的多种传感器及处理性能计算车辆运行平稳性量化标准,为乘客提供参考信息,引起乘客对列车运行平稳性的关注并提高轨道车辆相关信息的普及性。
Sperling平稳性指标在我国铁路有长期的非正式的应用[1]。本课题采用的1985年发布的GB5599铁道车辆动力学性能评定标准中,平稳性评价标准基本与sperling指标相同[2]。此评价指标根据频率将不同段的加速度波形分组,根据其不同频率加权计算平稳性并叠加以计算整个波形的平稳性指标。
软件层面上,程序运行于智能手机广泛使用的安卓系统,采用Java语言编写。使用快速傅里叶变换算法(FFT)处理数据采集得到的横向与垂向加速度离散信号以将其转换到频域并根据指标设计算法量化计算平稳性。
1 基础理论
1.1 设计方案
1.1.1 程序架构
程序通过SensorManager类实现对硬件部分的调用,使用手机内置的加速度传感器设备完成横向与垂向振动数据采集。通过程序处理得到合适长度的实时横向,垂向加速度信号序列后,使用快速傅里叶变换(FFT)算法将信号转换到频域,并按照GB5599-1985铁道车辆动力学性能评定推荐的平稳性指标计算方法进行平稳性计算,并根据此平稳性指标给出实时的平稳性评定。平稳性评定的结果通过友好简洁的软件界面显示。为了直观展示实时数据与计算得出的横向、垂向的平稳性指标,在程序街面上绘制了加速度波形图,快速傅里叶变换波形图,指标数据柱形图。
系统的总体框架示意图如图1。
图1
1.2 硬件及软件支持
1.2.1 Android系统与Java语言
Android系统是一种广泛使用于移动设备的操作系统。 Java语言是一种可以撰写跨平台应用程序的面向对象的程序设计语言,Android应用常使用Java语言编写,本应用基于Android系统实现,使用Java语言进行编写。
1.2.2 线性加速度传感器
线性加速度传感器(linear acceleration sensor)在每个采样时刻返回x,y,z三轴的加速度数值。对于加速度传感器与线性加速度传感器在同一轴向上给出的值,理论上满足如下关系:
加速度=重力+线性加速度[3]。
线性加速度传感器的数据并非直接由物理传感器给出,它需要加速度传感器,方向传感器与陀螺仪的数据,经过计算得出。
1.3 评价标准
1.3.1 平稳性指标
GB 5599—1985铁道车辆动力学性能评定规定,客车运行平稳性(旅客乘坐的舒适性)分别按平稳性指标和平均最大振动加速度评定。客车运行平稳性指标按以下公式计算。
式中:W为平稳性指标;A为振动加速度,g;f为振动频率,Hz;F(f)为频率修正系数(列于表1、表3)。
表1 横向振动平稳性频率修正系数
表2 横向振动平稳性等级
表3 垂向振动平稳性频率修正系数
表4 垂向振动平稳性等级
GB 5599—1985根据以上公式求平稳性指标W,并根据表2、表4进行平稳性等级评定。
2 硬件调用及算法逻辑
2.1 传感器
2.1.1 SensorManager类与线性加速度传感器
SensorManager类(android hardware SensorManager)是所有传感器的一个综合管理类,包括了传感器的种类、采样率、精准度等。开发者可以通过这个类访问设备上的各种传感器。本应用需要来自加速度传感器的实时数据。在Android系统中,提供给程序开发者使用的几种传感器类型中包含有线性加速度传感器Sensor.TYPE_LINEAR_ACCELERATION。可以通过实例化SensorManager对象与线性加速度传感器的一个Sensor实例并注册监听器,实现调用硬件,采集传感器数据。
2.1.2 采样率
根据奈奎斯特采样定理,在进行A/D转换过程中,当采样频率大于信号中最高频率的2倍时,采样之后的数字信号完整保留原始信号中的信息。在实际应用中根据经验,一般采样频率为信号最高频率的5~10倍。
Android系统提供了几种常用的采样频率枚举。其中枚举型SensorManager.SENSOR_DELAY_GAME符合本文中应用所需要的采样率要求,采样间隔为20000微秒,即频率50 Hz,故采用此枚举型注册监听器[3]。
2.2 数据采集与处理
2.2.1 采样序列与排序
FFT算法在采样序列长度为2的N次方时有更快的处理速度。运算精度与消耗时间随序列长度增加,因此需要选择合适的序列长度。程序选择每次将长度为256的离散序列进行FFT处理。对传感器每单一轴向返回的数据,使用如下逻辑储存:
声明数组a[256]作为储存数组,初始化时将数组元素置零,等待新采集的信号数据的存入,如图2。
图2
设开始信号采集时t=0,每一采样时刻采集一个信号dt,按顺序依次存入a[0]~a[255]。t=k时刻数组a中存储情况如图3所示。
图3
当采集的数据个数超过数组的大小256,继续使用数组a存储新数据,从a[0]开始重新覆盖写入新数值。此时会将数组中存储时间最久的数组元素中的内容覆盖。此时情况如图4所示。
图4
此时数组a中存有离当前采样时刻最近的256次采样数据。若将其按照时间顺序重新排序,形成的数组b存储排序将如图5所示。
图5
当计算平稳性指标时,执行排序操作,对数组b进行快速傅里叶变换处理。
2.2.2 计算平稳性指标
快速傅里叶正变换将一个线性加速度离散序列转化为离散傅里叶系数序列。离散傅里叶系数序列可以转化为对应频率子波的振幅值。对于实序列,将离散傅里叶系数乘以系数2/N,即可得到对应频率的振幅。
3 代码实现
3.1 算法
3.1.1 FFT
对于有限长序列,离散傅里叶变换(discrete Fourier transform)把信号从时域变换到频域以研究信号的频谱结构。在实际应用中通常采用高效计算DFT的方法,快速傅里叶变换(fast Fourier transform)[4]。
3.2.2 JFFTPACK
本文中使用的FFT计算采用了JFFTPACK。FFTPACK是快速傅里叶变换的一个计算机语言算法实现,可以对周期序列及其他对称序列进行快速傅里叶变换。它可以进行实序列、复数序列等序列的快速傅里叶变换。JFFTPACK是其Java语言实现的开源算法包[5]。
3.2 数据采集与处理
3.1.1 数据采集、存储与排序
实例化SensorManager对象与名为lasensor的线性加速度传感器Sensor对象并注册监听器,实现调用硬件,采集传感器数据。枚举型SensorManager. SENSOR_DELAY_GAME设定了传感器的采样频率为50 Hz。实现了接收传感器返回值并储存在数组的功能。
3.1.2 指标W计算
使用一个Java函数实现计算指标W。变量frequency为程序选用的采样频率,fs2数组为离散傅里叶系数序列。变量i为数组序号,i*c为i对应的子波频率。根据表1与表3中的公式分组加权计算指标W后返回单精度浮点型变量。
4 App前端UI开发与软件功能
4.1 界面
4.1.1 绘图
本安卓应用实现了将轨道车辆运行的平稳性以一确定指标量化,并根据此指标评价列车运行状况,以直观的数据、波形图、柱形图反馈给用户。(见图6)
图6
以加速度值为纵轴,其序号为横轴绘制加速度波形图,能直观的展示当前振动波形的强烈程度与时域上的特性。将经过FFT以及归一化处理后得到的振幅序列作为纵轴,其序号为横轴绘制频谱图像,能直观的展示当前振动波形的不同频率成分及其大小。经过计算后,指标W对应的评定等级由程序展示于屏幕上。在街面上绘制柱形图及其颜色直观表示其程度。
4.1.2 刷新频率选择
程序的绘图刷新频率独立于采样频率。过高的绘图频率将消耗硬件性能,而过低时会使软件有延迟感,影响用户体验。本程序设定每采样16次将加速度序列进行FFT并重新绘图与更新数据显示。
4.2 使用
4.2.1 方向
线性加速度传感器获取空间坐标系的x,y,z三个分量的线性加速度。对应于手机,将手机平放于水平面,z轴垂直于手机屏幕所在平面,x轴重合于屏幕水平方向,y轴重合于屏幕竖直方向向上,坐标原点位于屏幕左下角。令手机屏幕水平方向与车辆水平方向平行,此时传感器给出正确的数值以供计算。[6]
4.2.2 延迟
程序中FFT计算需要大小为256的数组,因此理论上一次变换需要从5.12s前到最近一次采样时刻的256个采样点进行计算。尽管指标W的更新间隔相对而言很短,它并不表示实时的运行平稳性,而是约5.12s内的车辆运行平稳性情况[6]。
5 结论
轨道车辆作为一种使用率高的交通工具,其运行品质对乘客的舒适度与体验有着重要意义。本安卓应用实现了将轨道车辆运行的平稳性以确定的平稳性指标W量化,并根据此指标评价列车运行状况,为乘客提供直观易懂的参考信息。本应用在提高乘客对轨道车辆乘坐体验的关注度与普及轨道车辆相关知识方面有一定意义。
[1]梁海啸.踏面磨耗对车辆稳定性及平稳性的影响分析[J].华东科技:学术版,2012(4):6.
[2]朴明伟,粱树林,方照根,等.高速转向架非线性与高铁车辆安全稳定性裕度[J].中国铁道科学,2011,32(3):86-92.
[3]漆晖,孙继武,伍智敏.新型永磁直驱式柔性构架转向架研究[J].佳木斯大学学报(自然科学版),2012,30(1):53-56.
[4]郑培治,祖炳洁,杨建福,等.不同轨道随机激励下的车辆动力学性能仿真研究[J].价值工程,2015,34(36):217-220.
[5]牛雪梅,高国琴,鲍智达,等.基于滑模变结构控制的温室喷药移动机器人路径跟踪[J].农业工程学报,2013(2):9-16.
[6]许自强,罗世辉,马卫华.速度200km/h车辆一系悬挂参数优化及性能分析[J].铁道机车车辆,2012,32(1):22-25.
Android Application of Evaluating Lateral Stability of Rail Vehicle
Bao Liqi1WangJianing2
1.Shanghai University of Engineering Science, School of Urban Rail Transit、Rail Transit Signal and Control,200335 Shanghai 2.Shanghai University of Engineering Science,School of Electrical and Electronic Engineering、Automation,200335 Shanghai
The stability of the rail vehicle is an important index to evaluate the quality of the operation. According to the criteria of stability assessment of railway vehicles in China, the mobile phone application is developed to evaluate the stability of the rail vehicles, which makes it easy for the passengers to obtain the reference information of the stability of the passenger rail vehicles. The software layer using intelligent mobile phone with Android as a carrier. The hardware layer acquire acceleration signal by using integrated acceleration sensor and gyro sensor in intelligent mobile phone. The monitoring system is developed by Java.
Rail vehicle; Stability; Acceleration sensor;Android
HJ84.K
A
1009-6434(2016)10-0131-04
包立麒(1995—),男,汉族,籍贯(精确到市)为江苏省淮安市,学历本科,研究方向为轨道交通信号与控制。