文章详情

  1. 您现在的位置:首页
  2. 资讯中心
  3. 技术资料
  4. 详情

基于FFT算法的车载机械控制故障诊断

故障诊断,也称为早期故障检测和分类,是一个新兴的研究和开发领域。文献中已经提出了多种与诊断相关的技术,这些技术可以分为基于模型、基于信号和基于数据的方法。

已经使用这些技术对多种设备和系统进行了健康监测分析。鉴于电动汽车和混合动力汽车中电机的使用不断增加,机器的早期故障检测和分类方法是目前正在研究的一个领域。

一般来说,故障检测方法需要额外的计算强度、高分辨率、大量存储器,并且消耗更多功率,这增加了实现诊断算法所需的嵌入式硬件的相关成本。这样的算法应该能够使用具有成本效益的硬件产生合理的结果,但不幸的是,这会带来较低分辨率、有限内存和低功耗的妥协。在本文中,我们通过描述汽车直流起动机齿轮故障的方法来研究故障诊断。

汽车中的电机在

现代汽车中,例如电动汽车或混合动力汽车,功率范围从几瓦到数千瓦的电机被用于各种应用。小型机器被用于电动车窗、雨刮器驱动器、后视镜、座椅和方向盘调节以及类似的公用设施。然而,在电动或混合动力传动系和转向器中,使用更高功率的电机。它们在汽车中执行关键操作;例如,舵机电机就非常重要。因此,及时的故障诊断和对未来运行的接近现实的预测是必须的。

考虑到电机利用率和关键操作的增加,故障诊断和预测已成为过去十年中认真和彻底研究的领域。文献中已经提出了基于侵入式和非侵入式方法的各种诊断技术。

电机电流特征分析是机器故障诊断的一种流行方法。与任何其他硬件一样,电机也容易磨损。这种磨损反映在将电流和电压引入这些机器的方式上。对这些数据的观察、收集和分析是对故障诊断算法进行相当广泛的研究的基础。这项研究解决了这个问题,从简单的基于分类器的模型到更复杂的图形模型,例如隐马尔可夫模型。尽管产生了出色的结果,但这些模型无法扩展到部署电机的环境。

一般来说,电机部署在内存和计算要求受限的环境中。因此,设计一个足够强大、准确且简单的模型来处理此类环境中遇到的各种问题是一项重大挑战。Ali 等人 [1] 通过在传感器网络上实时训练支持向量机,在这个方向上迈出了重要的一步,但他们的模型并没有充分反映结果是如何实现的。在下面的章节中,我们详细讨论问题、故障诊断研究中采用的方法,提出我们的方法。

检测故障

基于分析声音以区分正常电机和故障电机的模型构建的简单解决方案虽然很诱人,但在汽车中无法实现,因为汽车发动机内会产生显着的噪音。此外,声音识别是一个计算成本高昂的过程,很难到资源有限的嵌入式机器上。,不同的电机在出现故障的情况下必然会产生不同程度的声音效果,而将我们的算法扩展到任意电机将是一项艰巨的任务。

在正常情况下,流入电机的电流遵循一定的模式。然而,如果机器出现故障,该故障将出现在机器电流中并产生瞬变。这些瞬态可以以尖锐脉冲的形式出现,并立即减弱或以高频谐波的形式出现。特别是,正如 Zaidi 等人 [2] 所建议的,瞬态谐波的频率可达 12KHz。使用低内存空间和较少的计算能力在嘈杂的环境中定位和分类这些瞬态是一项重大挑战。必须确定能够提供所需结果的合适嵌入式系统。下面显示了不同严重程度的齿轮故障的图解说明,由 Zaidi 等人提供 [2]。

图1:齿轮故障

故障诊断模型

在诊断领域,故障是指设备开始表现出缺陷的早期迹象的情况。如果不加以缓解,这些缺陷会恶化,设备将无法执行所需的任务。这种情况称为故障状态。故障与失效之间的时间间隔是及时诊断故障的机会所在。在电机故障诊断领域,通常采用的三种主要方法是基于数据、基于模型和基于信号[2]。

基于模型。 基于模型的诊断依赖于对其模型用于预测故障特征的机器的理论分析。测量的签名和模拟的签名之间的差异被用作故障检测器。残差分析和适当的信号处理用于定义故障指数。

基于数据。 基于数据的诊断不需要任何机器参数和模型的知识。相反,它依赖于信号处理和聚类技术。对从实际机器采样的数据进行处理,以提取一组特征,这些特征被聚类以便对它们进行分类。接下来,使用决策过程技术来定义故障指数。人工智能和模式识别技术被广泛用于实现上述目的。

基于信号。 基于信号的诊断寻找从实际机器采样的数量中的已知故障特征。然后通过适当的信号处理来监测这些签名。通常,使用频率分析,尽管先进的方法和/或决策技术可能会令人感兴趣。在这里,信号处理起着至关重要的作用,因为它可用于增强信噪比和标准化数据,以便将故障与其他现象隔离开来并降低对运行条件的敏感性。

系统设计

在我们提出的系统所监测的电机中,电流样本中存在的高频谐波是故障的证据。为了识别这些高频谐波,我们需要将信号从时域转换到频域,以便对其进行分析以检测高频分量。我们通过采用快速傅立叶变换 (FFT) 来实现这一点,这是将时域信号转换为频域的算法。特别是,我们使用定点 16 位算术对输入电流样本进行 512 点 FFT。此外,问题的一个重要部分是噪声消除,这是部署电机的环境的固有部分。

噪音消除。如果我们的原始信号是 f(x),并且添加到其中的高斯噪声由 ? 给出,则噪声信号由下式给出

这里的目标是 根据g(x)预测f(x)。

尽管在信号去噪方面已经做了大量工作,但可扩展到实时嵌入式环境的算法仍然是一个重大挑战。通过考虑高斯噪声的一个简单属性,即在平均时它会被抵消,可以克服这一挑战。具体来说,对接收到的输入向量进行平均可提供噪声已被大大消除的输入频谱。图 1 说明了结果。

图 2:平均去噪

预过滤。FFT 计算重要的部分之一是位反转,这是一种将频谱分量放置在频谱中正确位置的方法。完成此任务的快方法是将表存储在闪存中,并在每次 FFT 计算结束时对其进行索引。在没有噪音的情况下,这并不是一项繁琐的任务。但在存在噪声的情况下,FFT 样本被平均多达 50 次,这仍然意味着处理器需要实时完成大量工作。

通过预过滤频率低于 200Hz 的输入信号,可以消除此瓶颈。通过实验观察已达到阈值 200Hz,实验观察表明,在发生故障的情况下,大多数瞬变具有 KHz 范围内的频率分量。一旦低频分量被去除,频谱中留下的信息就是高频分量。现在可以在不进行位反转的情况下对这些分量进行平均,因为低频频谱分量已被滤除。

快速傅立叶变换。滤波后,信号被馈送到 FFT 引擎,将信号变换到频域。然后将该信号添加到先前获得的 FFT 矢量中以对其进行平均以消除噪声。这个过程会进行多次,并且完全取决于信噪比。一旦对信号进行了特定次数的平均,就需要一个简单的循环来检测频谱中高于阈值的峰值。这可以检测高频成分的存在。

目标环境

所开发的系统主要针对汽车起动电机的故障检测。转速可达2500转/分;通常转速保持在1400~1500转/分,即25转/秒。这意味着可以在 40 毫秒内获取有关齿轮的完整信息。在此期间(采样频率为10kHz),采集的数据点数量仅为400。我们的ADC的采样率调整为每秒10,000个样本。由于我们只需要 400 个样本来对频域行为进行建模,这会急剧减少我们的时间样本空间,而鉴于嵌入式设备的片上内存有限,这对于执行和存储 FFT 至关重要。

为了限度地降低成本,同时限度地提高性能,我们针对不同的设备设置了基准,并根据各种变量(包括时钟速度、内存和硬件优化组件)对它们进行评判。我们特别比较了数字信号处理器 (DSP)、FPGA 和赛普拉斯的可编程片上系统 (PSoC) 器件。具体来说,我们对任何设备的主要关注点都是成本、FFT 基准、预过滤和内存。

FFT 基准。如上所述,我们的样本空间是 16 位无符号整数格式的 512 个点的帧。每个样本都以 Q8.8 格式存储,其中前 8 位用于整数部分,后 8 位用于小数部分。我们用C语言实现了512点FFT变换。计算的旋转因子存储在Flash中以保存在SRAM上。

DSP 与 PSoC 算法实现

在我们的评估中,PSoC 系列器件由于并行化和板载外设而超越了 DSP 架构。例如,大多数 DSP 没有 ADC,也不能在计算 FFT 的同时过滤信号,因为它是单核设备。相反,PSoC 可以累积滤波器结果,同时对先前存储的样本进行 FFT 处理。这是可能的,因为滤波器是在独立于主核的迷你 DSP 中实现的。然后,滤波器可以使用 DMA 将结果直接传输到内存中,然后加载到 FFT 输入空间中。

图 3:系统流程图

额外的布线成本

添加外部 ADC 会带来成本和布线需求。由于 PSoC 在单个芯片中集成了所需的外设,因此不需要用于处理数据的外部组件。

实验设置

电流样本是通过将 ADC 与分流电阻耦合来获得的。电流样本的宽度为每个 8 位。一旦获得 512 个样本,就运行 FFT 例程将时域信号转换为频域。

电流源由 PSoC 机器中嵌入的 Delta Sigma ADC 进行采样。这是一款高质量模数转换器,具有多重采样功能,即同一 ADC 可以切换到不同位宽的不同采样率。这支持不同的场景,在这些场景中,我们可能必须处理具有截然不同要求的多个电机。

虽然这种方法非常强大,但这种用于电机故障检测的模型在处理非常尖锐的后退脉冲形式的瞬态时存在重大问题,因为 FFT 无法识别频谱中尖锐的消失脉冲。在此阶段会发生信息丢失,这可能会给设计识别电机故障的系统带来重大障碍。

这个问题可以通过采用小波变换来解决,小波变换是一种有效的技术,可以将时域信号解析为时频频谱,同时保留与尖锐脉冲以及高频谐波相关的信息。