首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >基于Zynq的柴油机振动信号采集系统设计(YUNSWJ 仿真版)

基于Zynq的柴油机振动信号采集系统设计(YUNSWJ 仿真版)

作者头像
云深无际
发布2026-01-07 13:58:20
发布2026-01-07 13:58:20
350
举报
文章被收录于专栏:云深之无迹云深之无迹

今天写一个设计,关于采油机震动监测:

https://iopscience.iop.org/article/10.1088/1742-6596/2813/1/012002
https://iopscience.iop.org/article/10.1088/1742-6596/2813/1/012002

https://iopscience.iop.org/article/10.1088/1742-6596/2813/1/012002

柴油机的振动信号蕴含大量故障信息,准确采集振动信号可为柴油机状态监测提供可靠的数据支持。本文设计了一种基于高性能Zynq芯片的柴油机振动信号采集系统。该系统选用IEPE压电加速度传感器采集柴油机振动信号,并设计了一个信号调理电路,利用差分信号的特性滤除信号传输过程中的干扰,并调节信号的电压幅值,以确保其满足AD转换模块的输入电压要求。考虑到AD7771优异的性能,选用其作为AD转换芯片,并完成了外围电路的设计。最后,在Multisim 14.1软件中建立了信号调理电路的仿真模型,验证了系统的良好性能,并开发了上位机软件用于监测柴油机的故障信息。

信号链拓扑
信号链拓扑

信号链拓扑

测量参数
测量参数

测量参数

对象:柴油机振动信号。振动里包含大量工况和故障信息,用来做状态监测和诊断。

柴油机→IEPE 加速度计→恒流源→差分调理→AD7771→Zynq(PL+PS)→上位机故障诊断

做一块 集成信号调理 + 多通道同步采集 + 上位机监测 的板卡,而不是传统“调理板 + 采集卡分离”的方案(那样布线麻烦、成本高)。

传感器:IEPE 压电加速度计 CA3010A-10

ADC:ADI AD7771(8 路同步 24-bit ΔΣ ADC)

主控:Xilinx Zynq-7000(XC7Z020)

做一套基于 Zynq+AD7771 的 8 路 IEPE 柴油机振动采集系统,集成调理、采样、通讯和上位机诊断。

传感器选型:为什么用 IEPE 加速度计?

柴油机振动频段

按 GB/T 7184-2023 标准,柴油机常规振动严重度评价频率范围:2 Hz–1 kHz;柴油机低频振动为主,且低频加速度幅值较小 → 易被噪声淹没。

IEPE 的优势

文中选择 CA3010A-10 IEPE 单轴加速度计,主要参数:

灵敏度:10 mV/g

动态量程:±500 g

频响:1~10 kHz(其实比 1 kHz 要宽很多,为后续高频故障分析留余地)

满量程输出:±5 V

输出阻抗 < 100 Ω

IEPE 是低阻抗电压输出,内部有电荷放大器,抗干扰能力比“纯电荷输出”传感器好很多;只需要两根线(信号+电源共线),工程布线简单;量程和灵敏度都能覆盖柴油机从正常到故障的振动范围。

信号调理电路:恒流源 + 差分抵消干扰 + 单端转差分

这一部分是全文的“模拟精华”。

恒流源:给 IEPE 供电(XTR111)

用 TI 的 XTR111 做“电压→电流”的精密恒流源;供电 24 V,输入控制电压 2.5 V,通过 SET 电阻设定输入电压与输出电流比值:

通过 R225、R222 组合选择,使输出电流设为 4 mA,作为 IEPE 的激励电流→ 这一步就是构成标准的 “4 mA IEPE 激励”,保证传感器正常工作。

减法电路:用 OPA277 做“差模信号 + 共模干扰抑制”

看 Figure 3 的“输入信号减法电路”:

运放:OPA277UA,±12 V 供电。

传感器两根线:

SENSOR_VIBRATION_VOUT_1 → 接运放正输入(+)

SENSOR_VIBRATION_VCC_1 → 接运放负输入(–,也就是恒流源侧)

电路要点:

前级保护:输入线上串电阻 + 钳位二极管,可抗 ±30 V 过压,防止插拔/浪涌烧坏 OPA277。

电容用途

C310:串在负输入一侧,用来隔离恒流源 DC 分量;

C299 与反馈电阻 R238 并联:构成高频补偿,防止运放自激、抑制高频噪声;

C305、C322:对地的退耦/滤波电容,进一步滤掉高频干扰。

差分抑制干扰

两根 IEPE 线缆通常做成 绞合对线,外界电磁干扰以“共模”的形式耦合到两根线上;运放做减法:

其中 V3、V2 是两线电压。

共模干扰(V3≈V2 部分)被抵消,只留下真正的振动信号(两线电压差里的 AC 成分)。

同时“缩小”振幅:通过合适选择 R238/R245,使输出振幅缩小 4 倍;这样既降低后级 ADC 的压摆要求,也留足余量防止过载→ 这一级等效于:共模干扰抑制 + DC 移除 + 适当增益/衰减 的前置运放。

单端 → 差分:用 OPA2277 做伪差分驱动 AD7771

Figure 4:单端转差分电路。

运放:OPA2277UA,双运放结构。

一路作为电压跟随(buffer):输出 ADCURRENT_A_P;

另一路作为反相器:输出 ADCURRENT_A_N。

两路输出:

幅值相等、相位相反 → 形成差分信号;共同叠加了 ADC 提供的 VCM 共模电压,让信号摆动在 ADC 允许的共模范围内。

VCM 的来源:

AD7771 提供一个 VCM 引脚;由 ADC 内部参考和电源生成,单电源 3.3 V 情况下:

这一级做的事情:

把前面减法运放输出的单端信号 VOUT,变成 围绕 1.65 V 共模、差分摆动的信号对;完全匹配 AD7771 的“差分、伪双极性输入”要求;同时差分传输又增强了对数字噪声/共模干扰的抗性。

AD7771 模块:采样定理、芯片选型与外围

采样定理 & 采样率选择

振动有效频段约:2 Hz–1 kHz;

按 Nyquist:fs ≥ 2·fmax;工程上常取 3~5 倍。

文中选的是 8 通道同步采样,每通道 12.8 kSPS

对 1 kHz 信号,采样倍率 ≈ 12.8 倍,非常宽裕;若未来扩展到 5 kHz 甚至 10 kHz 的高频故障,也有余地。

AD7771 选型理由

列出的关键规格:

24-bit 分辨率

8 路同步 Σ-Δ 转换器

SNR ≈ 95 dB、THD ≈ –109 dB 级别

双极输入 ±1.8 V

最大 128 kSPS / 通道

支持高分辨率模式(高 OSR)与低功耗模式

结合应用看:

柴油机振动频段不高,对带宽要求不苛刻,但希望动态范围尽可能大 → 24-bit ΔΣ 很合适;8 路同步采样,满足多点同时采集(发动机多个测点);AD7771 内部带 PGA(1/2/4/8),可以根据传感器输出幅度选择合适增益。

AD7771 外围连接

Figure 5 里给出了典型连接:

电源:

Analog 3.3 V 单电源,模拟地 AGND;数字 3.3 V,和 AGND 共地;内部 2.5 V 参考,VMID/VCM 输出 1.65 V(作为前端共模)。

模拟输入:8 路差分输入 AIN0~AIN7,直接接到 OPA2277 的差分输出;选择“真差分”模式以获得最佳抗干扰性能。

接口:数据输出有 “高速串行口” 和 SPI 控制口两套:高速口直连 Zynq PL(FPGA 部分),用于高速采样数据流;SPI 用于寄存器配置、模式控制、校准等。

验证信号调理电路

Multisim 14.1 做了信号调理部分的仿真。

用函数发生器(5 V、100 Hz 正弦)模拟 IEPE 输出;用两台虚拟示波器:一台测减法电路输出(单端);一台测最终差分输出(送 ADC 的那一对)。

仿真结果:

减法电路输出

幅值变为 1.25 V(缩小 4 倍),频率仍为 100 Hz;说明增益设计正确。

差分输出

A/B 两路信号振幅相同、相位相反;差分值反映真实振动信号;调理电路能 有效滤除干扰 + 调整幅度到合适范围 + 输出规范差分信号

点评一下设计

采样和带宽配置挺保守:目标频段只有 1 kHz,采样 12.8 kSPS,OSR 足够大;AD7771 本身可以做到 128 kSPS,远超需求;这样好处是:噪声性能更好、抗混叠更加轻松。如果要扩展到高频故障(喷油脉冲、齿轮啮合等),完全可以继续抬高 fDATA。

调理电路重视“传输线抗干扰”,思路是对的:两线绞合 → 共模干扰为主;运放减法 → 把共模干扰扣掉;之后再做差分驱动 ADC → 抗数字地噪声/EMI;这强干扰场景很关键。

AD7771 的性能对这个应用是“富裕”的柴油机振动信号本身噪声和随机性很大,95 dB SNR + 24-bit 分辨率完全够用,更多是为动态范围留余量。

如果要做更高端的状态监测(比如轴承高频故障、包络解调),可以把采样率开到 64/128 kSPS,配合合适的模拟前端和数字滤波。

信号链仿真

说明一下假设:论文没有给出具体 R/C 数值,我用了一套“符合文中描述 + 柴油机 2Hz~1kHz 应用”的合理参数,搭了一个等效两级模型: 一级:OPA277 减法 + AC 耦合 + 低通(带宽 1 Hz~20 kHz,增益 0.25) 二级:OPA2277 单端→差分驱动 AD7771(带宽到 50 kHz,增益 1)

第一张图:Abstracted conditioning chain: magnitude response

黄色:Stage1(OPA277 减法)

1 Hz 以下明显衰减(高通特性),把恒流源的 DC 和极低频漂移滤掉;20 kHz 附近开始滚降(低通),抑制高频噪声;通带内增益 ≈ –12 dB(0.25 倍),对应论文说“缩小 4 倍”。

蓝色:Stage2(OPA2277 差分驱动)

从几十 Hz 到 10 kHz 左右基本 0 dB(增益 1);50 kHz 左右开始下降,代表驱动带宽有限。

绿色:总传递函数(到 AD7771 输入)

1 Hz 以下是高通上升段;1 Hz~20 kHz 基本平坦在 –12 dB 左右;20 kHz 以后整体向下掉。

也就是说,这个等效模型把调理电路表达成一个:

带宽约 1 Hz~20 kHz 的准平坦带通 + 约 –12 dB 总增益 → 完全覆盖柴油机 2 Hz–1 kHz 的振动频段,并给高频留一些余量。

第二张图:Conditioning chain noise spectral density (simplified model)

假设:

OPA277 输入噪声 ≈ 8 nV/√Hz

OPA2277 输入噪声 ≈ 8 nV/√Hz

把电阻热噪声等 lump 成 Stage1 输入等效 6 nV/√Hz→ Stage1 等效输入噪声 en1 ≈ 10 nV/√Hz,Stage2 en2 ≈ 8 nV/√Hz

按“每级噪声乘上对应传函”的方式算:Stage1 噪声:通过 H1+H2,到 ADC 输入端;Stage2 噪声:只乘 H2,到 ADC 输入端;两者功率谱相加,得到总 V²/Hz;取平方根就是 nV/√Hz。

图上可以看到:2 Hz 以上,总噪声密度在 ~8–9 nV/√Hz 左右比较平;到 20 kHz 以后,随着低通滚降,噪声密度也开始下降。

集成噪声(2 Hz~10 kHz)结果

脚本最后算了一下 2 Hz~10 kHz 这一段的积分噪声

代码语言:javascript
复制
Integrated conditioning noise from 2.0 Hz to 10.0 kHz:
  Stage1 contribution  ≈ 0.239 µV_rms
  Stage2 contribution  ≈ 0.792 µV_rms
  Total conditioning   ≈ 0.827 µV_rms (at ADC input)

也就是说,在这个简化模型下:调理电路本身在 2Hz~10kHz 带内只贡献 ~0.83 µV RMS 的噪声(折算到 AD7771 输入端)。而 AD7771(类似 LHA5278H 那类 24bit ΔΣ)的自身等效噪声通常在 几 µV 量级,所以整体系统噪声仍然主要由 ADC + 传感器决定,调理电路不会成为瓶颈。

这和文章的设计意图是对齐的:前端主要负责幅度调整 + DC 隔离 + 抗干扰,噪声水平做到“明显低于 ADC 自噪声”就够。

信号链总体结构

完整链路分成四个部分:

代码语言:javascript
复制
柴油机振动 → IEPE 加速度计 → 恒流源 → 减法电路 → 单端→差分 → AD7771 → Zynq → 上位机

其核心目标只有三个:把 IEPE 的高压偏置(+12V/+24V)抹掉,只留下振动 AC把差分信号有效保真地送到 ADC 的差分输入整个带宽、噪声、动态范围都满足振动分析需求

IEPE 传感器接口:恒流源 + AC 耦合

IEPE 的输出为:

Vbias ≈ 10–12 V(来自恒流源)

S = 灵敏度,例如 10 mV/g

a(t) = 加速度(振动量)

采集系统目标是把 DC 部分去掉,只保留:

恒流源计算(论文使用 XTR111)

XTR111 提供:

目标:2–4 mA,典型 4 mA。

只需决定:V_ctrl(一般来自 2.5V DAC 或电阻分压);R_SET(几 kΩ 到几十 kΩ)

减法电路(OPA277)— 去偏置 + 共模抑制 + 限幅

这一段是论文信号链的核心模拟部分:

代码语言:javascript
复制
IEPE 两线 → 减法放大器 → 输出 AC 信号(缩小 4 倍)

输入为两根线:

SENSOR_VIBRATION_VOUT

SENSOR_VIBRATION_VCC(恒流源端)

两根线通常是一样的 DC 偏置,因此减法电路:

论文中设置:

目的是去掉相同偏置电压(12V)来抑制共模干扰(绞线可以让电磁噪声以 V3≈V2 耦合),将 IEPE ±5V 的信号变成 ADC 适合的 ±1.25V

减法电路中的关键 RC 计算(高通与低通)

去偏置的高通滤波(AC 耦合)

文中目标:1 Hz 级别

作用:去掉 IEPE 输出的 DC 和低频漂移,防止放大器饱和

柴油机振动频段从约 2 Hz 起,因此:

是合理的设计。

高频抑制(低通)

低通截止频率:

论文设置大约:

Stage1(OPA277):20 kHz

Stage2(OPA2277):50 kHz

原因:

柴油机振动关注 <1 kHz;留余量到 10 kHz(高频能量、故障侧频);不希望宽带噪声放大到太高频率(避免推入 ADC)

单端 → 差分驱动(OPA2277)

运放 A 输出:

运放 B 输出:

AD7771 的差分输入信号为:

而共模电压:

单电源时

AD7771 只能接受:

差分驱动可极大提高抗干扰;让信号围绕 VCM 居中,避免负压

完整模拟链增益与带宽总结

一级衰减 1/4:

差分驱动后:

即 IEPE 的 10 mV/g 等效到 ADC:

带宽:

低端:1 Hz(高通)

高端:20–50 kHz(低通)

实际振动有效带宽:2–1000 Hz

噪声仿真

噪声输出:

其中:

:Stage1 输入等效噪声(运放 + 电阻热噪声)

:Stage2 输入噪声

:各级频率传函

噪声积分:

仿真的结果(2 Hz~10 kHz 区间):

代码语言:javascript
复制
Stage1 ≈ 0.239 µV_rms
Stage2 ≈ 0.792 µV_rms
Total ≈ 0.827 µV_rms

这说明调理电路本身噪声远低于 AD7771(几 µV);调理电路不会成为瓶颈;IEPE 传感器噪声(如 10~100 µg/√Hz)反而会成为主导部分

AD7771 采样:采样率与有效带宽

AD7771 的 FIR 滤波器:

如果选 12.8 kSPS:

和柴油机振动(1 kHz)完全匹配。

但如果未来做 10 kHz、20 kHz 的机械故障诊断,可把 fDATA 提高到:

32 kSPS

64 kSPS

128 kSPS

对应 FIR 通带分别扩到:

14 kHz

28 kHz

56 kHz

最终工程总结

IEPE → 电压

减法电路

带宽:

单端 → 差分

噪声密度传播

一级噪声:

二级噪声:

总噪声:

噪声积分(RMS)

ADC 输入动态范围

等效加速度量程:

系统噪声对应最小可测加速度

噪声预算(2 Hz–1 kHz 频带)
噪声预算(2 Hz–1 kHz 频带)

噪声预算(2 Hz–1 kHz 频带)

代码语言:javascript
复制
=== Full Signal Chain Noise Budget (2 Hz – 1 kHz band) ===
Sensor noise @ADC input      :   4.739 µV_rms  (  0.95 mg_rms)
Conditioning noise @ADC input:   0.830 µV_rms  (  0.17 mg_rms)
ADC intrinsic noise          :   0.790 µV_rms  (  0.16 mg_rms)
---------------------------------------------------------
Total chain noise            :   4.875 µV_rms  (  0.98 mg_rms)

对应柱状图可以直接看出:

传感器噪声 ~0.95 mg

调理电路噪声 ~0.17 mg

ADC 自噪声 ~0.16 mg

总噪声 ~0.98 mg(几乎被传感器主导)

也就是说,在 2–1000 Hz 这个柴油机振动频带里:系统已经做到“ADC + 调理都比传感器更干净”,真正限制分辨率的是传感器本身。

动态范围 & ENOB

代码语言:javascript
复制
=== Dynamic Range ===
ADC full-scale (diff)       : ±1.20 V  →  ±240000 mg
Total noise (1σ)            :    0.98 mg
Dynamic range (FS / noise)  :  DR ≈ 104.8 dB  (ENOB ≈ 17.12 bits)

这里假设:AD7771 满量程差分 ±1.2 V;前端总增益 G_total = 0.5 V/V(10 mV/g → 5 mV/g 到 ADC)

于是:满量程加速度 ≈ ±240 g(±240000 mg)2–1 kHz 频带里的噪声 ≈ 1 mg_rms;动态范围 ≈ 105 dB,等效 17 bit 有效位数

也就是:在这条链上,理论上可以分辨出 不到 1 mg 级别 的振动变化,而满量程还能容纳两百多 g 的冲击,是非常宽的动态范围。

总结

怎么一堆仿真没有实物测试,这和我水文章一样???

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-11-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 云深之无迹 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 传感器选型:为什么用 IEPE 加速度计?
    • 柴油机振动频段
    • IEPE 的优势
  • 信号调理电路:恒流源 + 差分抵消干扰 + 单端转差分
    • 恒流源:给 IEPE 供电(XTR111)
    • 减法电路:用 OPA277 做“差模信号 + 共模干扰抑制”
    • 单端 → 差分:用 OPA2277 做伪差分驱动 AD7771
  • AD7771 模块:采样定理、芯片选型与外围
    • 采样定理 & 采样率选择
    • AD7771 选型理由
    • AD7771 外围连接
  • 验证信号调理电路
  • 点评一下设计
  • 信号链仿真
  • 集成噪声(2 Hz~10 kHz)结果
  • 信号链总体结构
    • IEPE 传感器接口:恒流源 + AC 耦合
      • 恒流源计算(论文使用 XTR111)
    • 减法电路(OPA277)— 去偏置 + 共模抑制 + 限幅
    • 减法电路中的关键 RC 计算(高通与低通)
    • 去偏置的高通滤波(AC 耦合)
    • 高频抑制(低通)
    • 单端 → 差分驱动(OPA2277)
    • 完整模拟链增益与带宽总结
    • 噪声仿真
    • AD7771 采样:采样率与有效带宽
    • 最终工程总结
    • IEPE → 电压
    • 减法电路
    • 单端 → 差分
    • 噪声密度传播
    • 噪声积分(RMS)
    • ADC 输入动态范围
    • 系统噪声对应最小可测加速度
      • 动态范围 & ENOB
    • 总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档