Citation format:WU Jun, CHEN Zuoyi, YAN Zhe, et al.Development of Ship Bearing Health Condition Monitoring System Based on Hadoop[J].Journal of Ordnance Equipment Engineering,2020,41(1):140-144.
基于Hadoop的船舶轴承健康状态监测系统设计
轴承是船舶各个系统重要的组成部件,对整个船舶的安全稳定运行起着至关重要的作用。船舶在航行过程中,容易受到水流和气流等因素的影响而产生不同程度的振动情况。随着振动时间和强度的增加,作为船舶各系统支撑部件的轴承容易发生故障。如果不能及时发现轴承故障,可能会有灾难性事故发生,威胁到船员安全。因此,开展船舶轴承健康状态监测系统研制具有重要的工程应用价值。
随着物联网、智能传感、无线通信等技术的飞速发展及其在船舶领域的应用,船舶轴承状态监测数据日益庞大,呈现出大规模、高通量、多模态和强关联等特点[1]。如何高精高效地处理这些海量船舶轴承状态监测数据是一个亟待解决的关键性问题[1-2]。为此,本文研究基于Hadoop的船舶轴承健康状态监测技术与系统。
1 系统需求分析
目前,船舶轴承上安装有数以千计的各类传感器,实时采集温度、压力、热能、振动和噪声等信号,以实现船舶轴承健康状态的在线监测。随着监测时间的递推,数据量越来越庞大,超出传统的数据处理与存储的范围[3-4]。如何在大数据背景下实现船舶轴承健康状态的监测已经成为现阶段船舶状态监测领域研究的热点之一[5-6]。鉴于此,本文所提出的船舶轴承健康状态系统应实现如下目标:
1) 存储轴承在正常运行过程中的实时监测数据;
2) 在海量的船舶轴承状态监测数据中更好地发现有价值的数据信息;
3) 利用廉价的个人PC实现海量状态监测数据的存储与计算,降低系统成本;
4) 基于分布式的数据存储,实现系统的存储与计算数据的容错能力;
5) 建立海量数据存储、计算与用户之间的友好人机交互,使用户更方便、更直接地掌握船舶轴承健康状态。
通过对系统的需求进行分析,考虑到船舶轴承的工作条件恶劣、原始信息数据量大、传感器的实时性、故障诊断的准确性和系统的经济性等[3],明确船舶轴承健康状态监测系统需要实现如下功能:
1) 能够实现不同传感器的数据进行搜集的功能;
2) 能够实现满足和智能类型的传感器原始信号的大量数据存储与管理功能[4]。
3) 能够实现对轴承不同部件单独进行数据分析,判断该轴承的健康状态和剩余寿命。
4) 能够实现针对轴承的不同传感器信号采取不同算法模型进行计算和预测的功能,不同算法模型得到不同结果,能够实现评估哪一种模型更加可靠[5]。
5) 能够实现船舶轴承的剩余寿命的在线查看的功能,满足可视化的要求。
2 系统框架设计
基于船舶轴承健康状态监测系统的技术需求,利用“分层设计”的系统架构设计思想,并将大数据存储结构与传统的关系型数据库相结合,实现船舶轴承的海量监测数据的采集、存储、分析与应用,其系统整体框架如图1所示。
图1 系统整体框架示意图
数据采集层是利用嵌入到船舶轴承中的各种传感器对轴承的振动信号、温度信号和压力信号等进行采集,以不同频率和不同数据格式采集轴承状态参数,并将数据定时通过无线传感网络发送到指定的服务端中进行存储[7],完成原始信号的采集和初步存储工作。原始数据需要进行压缩和简单的降噪处理,之后再进行网络传输。
数据存储层是将采集层采集到的原始数据进行归类保存,关系型数据和非关系型数据分别进行保存。使用HBase 进行非结构化数据的高效实时存储,HDFS文件存储系统存储大规模文件数据,MySQL关系型数据库存储结构化数据[8]。
数据分析层是基于Hadoop分布式计算引擎和Mxnet的深度计算框架,集成大量的智能算法,利用GPU和CPU进行加速计算提高运行计算效率。集成的算法库包括机器学习算法库、统计分析算法库、深度学习算法库等。
数据应用层主要是实现系统功能,包括数据处理,状态诊断、寿命预测,系统管理等,实行分模块开发,便于维护和系统升级改造。该数据应用层的主要目的是向用户明确展示如何进行数据分析和计算、判断轴承处于哪种健康状态和预测轴承的剩余寿命[9-10],何时采取维修措施提供技术支持。
3 系统功能与业务流程设计
3.1 功能模块
系统功能模块如图2所示,主要包括数据管理、数据处理、状态诊断、寿命预测、数据可视化和系统管理等功能。
图2 系统主要功能模块框图
1) 数据管理
实现结构化和非结构化数据的导入管理功能。提供相应的数据导入接口,能够根据传感器的类型区别导入的数据是结构化数据还是非结构化数据;非结构化数据存储到Hbase中并进行拷备、删除、转移等管理方式,结构化数据存储到MySQL中以供实现备份、转移、删除功能。
2) 数据处理
实现数据的预处理、特征提取、特征选择和特征融合功能。预处理可以采取滤波平滑、去空奇异值、快速傅里叶变换、小波分析等方法。特征提取实现在时域和频域中进行特征值的提取[11]。特征选择采用斯皮尔曼系数对特征进行随时间的相关系数计算进行特征选择。特征融合实现将不同算法得到的特征值进行消减融合,得到比单个算法提取特征值更为优越的特征值。
3) 状态诊断
实现状态识别和状态预测的功能。状态识别功能实现根据选择的模型进行特征值输入网络或者分类模型中进行机械状态的识别,判断当前轴承处于哪种健康状态;状态预测功能实现根据当前机器设备所处的状态进行预测下一阶段可能会是哪种状态或者当天状态还能持续多久等。进行状态识别和预测所用的模型工具有、深度学习模型、支持向量机模型、隐马尔科夫模型等。
4) 寿命预测
实现单精度预测和双精度预测寿命的功能。进行寿命预测所用的模型工具有深度学习、统计分析和支持向量机。判断当前轴承是否已经到达寿命退化阶段并进行估计机器设备剩余寿命时间。
5) 数据可视化
实现监测轴承的状态功能,实时显示设备变化趋势,以及给出轴承维修决策的参考意见。对轴承的历史数据进行分析后的可视化包括显示设备整个寿命周期健康状态变化趋势,以及在整个寿命周期的重要节点显示维修策略(维护,小修,中修,大修,是否值得维修等);对轴承的在线监测数据的可视化包括实时显示设备的健康状态变化,并在关键节点提醒用户该采取的维修策略。
6) 系统管理
实现增、删、改用户功能,管理平台所有人和用户权限。实现配置软件系统的参数功能例如软件的背景,颜色,字体大小等设置。实现系统登录、退出记录的历史数据保留功能。
3.2 业务流程
基于Hadoop的船舶轴承健康状态监测系统能够并行处理海量状态监测数据。其采用的数据处理机制是MapReduce分布式计算,集成了机器学习、统计学习和深度学习的算法。业务流程如图3所示。
图3 业务流程框图
首先,传感器采集的海量原始信号经过简单数据预处理后导入到HDFS分布式文件系统。然后,对数据进行相应的去空值和去奇异值等预处理。对预处理之后的数据采用MapReduce模型进行时域、频域以及时频域特征的提取,提取相应的特征集。接着,基于斯皮尔曼系数方法下计算出每个特征随着时间的斯皮尔曼相关系数,斯皮尔曼等级相关系数大于0.8时,表明该特征随时间具有很强的相关性,即可筛选出作为有效的特征量;再基于PCA方法对筛选出的有效特征进行特征融合,可 根据选择合适贡献率来消除特征之间的冗余信息;将处理之后数据可根据需要选择状态诊断功能或寿命预测功能,然后基于深度学习、机器学习和统计分析的方法下进行建模和测试,若模型训练达到要求后,可基于该模型下对进行诊断或预测。
4 案例分析
船舶轴承健康状态监测系统的开发硬件环境为三台Centos6.9操作系统下搭建Hadoop分布式存储系统。在此基础上,以eclipse为开发环境,采用了java编程语言,运用了Mysql5.73和Hbase2.0数据库,开发了船舶轴承健康状态监测系统。系统主界面如图4所示。系统实现了数据管理、数据处理、状态诊断、寿命预测、数据可视化和系统管理功能。
图4 系统主界面图
基于船舶轴承健康状态监测系统下,以IEEE Prognostic and Health Management 2012数据挑战赛提供的轴承数据作为对象开展轴承寿命预测案例实验。该轴承数据的采集系统平台如图5所示,试验平台有旋转部件、退化产生部件(对测试轴承施加径向力)、测量部件三部分组成。通过安装在轴承上方的加速度传感器收集数据,设置传感器的采样频率为25.6 kHz。
图5 数据采集系统平台
将实验数据上传到该系统上对该数据进行数据处理,有关处理过程界面如图6,图6 (a)描述时域和频域的特征提取;图6 (b)描述基于斯皮尔曼相关系数特征选择;图6 (c)描述基于PCA方法特征融合。
数据处理完之后,再基于机器学习的SVM进行模型训练和测试有关界面如图7;图7(a)描述基于SVM模型训练和模型保存;图7(b)描述基于该模型下寿命预测结果;图7(c)描述预测寿命值的可视化。
案例分析的结果表明了,该系统能够对船舶轴承监控状态监测,在图7(c)显示预测寿命值在随着数据集增大有出现负值情况,这主要是由于轴承在运行过程中,早期故障时期轴承健康状态迅速恶化,过渡期较短采集的样本不够充分导致模型训练不够充分。
图6 数据处理界面
为了体现该系统数据分析效率性能,从轴承数据集中取6个规模不同的样本集,分别在该系统3个节点Hadoop集群上和单机环境下运行,从负荷挖掘分析到预测完成所需要时间如图8所示,可以得出单机环境下的数据分析速度明显低于该分布式环境下的速度。
图7 轴承寿命预测
图8 单机环境和三台物理集群环境运行时间
可以看出,与传统数据分析方式相比,本文提出基于Hadoop分布式轴承健康状态监测系统,可以满足轴承健康状态监测功能和有效提高了海量数据分析速度。
5 结论
本文针对大规模船舶轴承数据在存储和处理性能方面的要求,提出了一种基于Hadoop的船舶轴承健康状态监测系统。系统的测试结果表明,系统能够满足轴承健康状态监测的要求极大减小时间消耗,具有实际应用价值。
[1] 李俊卿.滚动轴承诊断技术及其工业应用[D].郑州:郑州大学,2010.
[2] 王德文,杨力平.智能电网大数据流式处理方法与状态监测异常检测[J].电力系统系统化,2016,40(14):122-128.
[3] 王海明,李红刚,蕫志宝,等.基于PowerPC的风电机组在线轴承状态监测系统设计[J].电子设计工程,2017,25(19):170-173.
[4] 阳建宏.滚动轴承诊断现场实用技术[M].北京:机械工业出版社, 2015.
[5] 王敏.基于形态分量分析的齿轮箱多故障诊断方法研究[M].长沙:湖南大学,2016.
[6] 田颖,武一.利用GPRS实现对高校各实验室电量的监测[J].电子设计工程,2017,25(5):107-111.
[7] 王相伟,史玉良,张建林,等.基于Hadoop的用电信息大数据计算服务及应用[J].电网技术,2015,39(11):1-2.
[8] 成静静.基于Hadoop的云计算/云存储方案研究与设计[J].电子设计工程,2016,24(22):112-114.
[9] 刘智慧,张泉灵.大数据技术研究综述[J].浙江大学学报,2014,48(6):957-972.
[10] 雷亚国,何正嘉,訾艳阳.基于混合智能新模型的故障诊断[J].机械工程学报,2008(7):112-117.
[11] 徐大维.基于时间序列分析法在轴承寿命预测中的应用研究[J].轴承,1994(5):30-36.
Development of Ship Bearing Health Condition Monitoring System Based on Hadoop