news 2026/10/21 2:38:02

LabVIEW 写的锁相放大器:氧气测到 200 ppm

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
LabVIEW 写的锁相放大器:氧气测到 200 ppm

把整台锁相放大器做进 FPGA,痕量氧气实测拟合优度 0.999

做气体检测的工程师都懂一种绝望:把激光对进气室、示波器一看——屏幕上只有一堆毛刺,理论上应该存在的吸收峰,早就埋进噪声里了。氧气浓度要测到 0.02%,也就是 200 ppm 这一级,靠"眼力"是没戏的。
2026 年《光电工程》上有一篇公开论文,把这件事做得很漂亮:用 LabVIEW FPGA 搭了一套数字锁相放大器,配合 TDLAS(可调谐半导体激光吸收光谱)测痕量氧气。这篇稿子把它拆开讲讲——不背公式,只看工程上是怎么落地的。

一|锁相放大:只认同频同相的分量

数字锁相放大链路(示意)

TDLAS 的套路是给激光加调制:论文里用5 Hz 锯齿波做扫描,叠加 10 kHz 正弦波做调制,激光器中心波长 760.59 nm,正好压在氧气的吸收线上。光穿过气室,浓度信息就调制在了光强里。
但探测器输出的信号比噪声还弱。锁相放大的思路是:既然我知道信号藏在 10 kHz 上,就拿一个同频同相的本地振荡去和它相乘(相敏检波),再过低通滤波——同频的留下来,其他频率一律当噪声滤掉。解调出来的二次谐波幅值,和氧气浓度线性相关。
原理一句话讲得完,难的全在实现上。

二|模拟方案的三个老大难

传统锁相放大器用模拟电路搭:相敏检波器、低通滤波器、放大器,一级一级焊出来。问题也是明摆着的——
一是温漂。模拟器件的参数随温度漂,开机两小时和刚开机不是一个状态,长期测量读数慢慢走。二是参考信号不稳,本地振荡抖一点,解调输出跟着抖。三是改参数难:滤波截止频率、调制深度都是电路决定的,换一种气体、换一条谱线,板子可能就得动刀。

三|整台仪器做进 FPGA

浓度标定趋势(示意,实测 R²=0.999)

这篇论文的做法是把锁相放大器的核心全部搬进 FPGA:任意波形生成(DDS)、相敏检波、低通滤波,一条链路全在芯片里跑。ADC 用 12 位、65 MSPS 的模块采样,DAC 用 14 位、125 MSPS 的模块回写,上位机通过千兆网 UDP 实时收发参数。
最值得看的一个细节:生成正弦波不用查表。传统 DDS 靠一张相位-幅值查找表,表深了占资源,表浅了有谐波。这篇设计用 LabVIEW 的高吞吐率数学函数,在 120 MHz 定时循环里实时计算正弦离散点,改频率、改相位就是改一个输入参数——调制参数可以测量中途在线改,这是模拟方案给不了的灵活性。

四|LabVIEW 在这里省了什么

FPGA 开发的传统路径是写硬件描述语言,调试周期长、改一行等一次编译。这套设计用 LabVIEW 图形化写 FPGA: DDS、相敏检波、低通滤波都是框图上的结构,上位机界面和 FPGA 逻辑在同一个工程里,前面板一屏看全解调波形和标定曲线。
对做测试系统的工程师来说,这才是重点:换气体、换谱线、换量程,改的是框图里的参数,不是整个程序骨架。一台仪器的架构可以复用到下一台,这是测试系统从"一次性工程"走向"产品"的关键一步。

五|冷静一点看

这是论文的实测结果:0.02%~15% 浓度范围内,二次谐波幅值与氧气浓度的线性拟合优度 R² 达到 0.999。当然,实验室指标和工业现场之间还隔着振动、温度、光路污染这些现实问题,真上产线还得自己验。但"数字锁相根治温漂、图形化架构改得快"这两个方向性结论,是站得住的。

写在最后

把淹没在噪声里的信号捞出来,是测试测量这行最老也最硬的手艺。你手上的系统里,有没有那种"信号明明存在、就是测不稳"的难题——是卡在传感器、采集,还是算法?评论区聊聊,说不定下一个案例就拆它。
#LabVIEW #FPGA #锁相放大 #TDLAS #数据采集 #微弱信号检测

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/21 2:37:01

工业数据十大痛点系列 · 第 8 篇

查了三个小时,还在猜 —— 设备为什么会坏,能不能不靠老师傅 工业数据十大痛点系列 第 8 篇 这里说的"痛点",是工业数据本身的问题 —— TDengine IDMP 是来解题的那一方。 一句话概括全篇:数据没有意义,A…

作者头像 李华
网站建设 2026/10/21 2:36:26

嵌入式架构学习5--Brilliant Labs Halo(2)(TODO)

书接上回。。。 6 Zeypher集成 6.1 整体内容 整体来说是基于Zephyr 3.6.0。核心的实现如下: 文件夹内容如下(GitHub - brilliantlabsAR/halo-firmware: Firmware for Halo, Brilliant Labs AI glasses — Zephyr RTOS on the Alif Balletto, with a Lu…

作者头像 李华
网站建设 2026/10/21 2:35:21

Ceph分布式存储深度解析-下篇

Ceph分布式存储深度解析:部署规划、运维调优与故障实战标签:Ceph运维、纠删码、cephadm、故障排查、性能调优前言 上篇看懂了Ceph架构与理论,理论再漂亮,最终要落地到生产环境。很多公司Ceph集群上线后卡顿、rebalance风暴、PG异常…

作者头像 李华
网站建设 2026/10/21 2:35:05

研究假设和数据结果对不上,往回查哪几个环节

跑完统计模型,发现系数方向与预设相左,或组间差异没有显现,不少研究生会在这里停住。与其推翻重来,不如沿「设计→测量→分析」这条回查轴倒着走一遍。知学术AIPaperGPT 的免费智能大纲能把回查清单先搭成骨架,免费科研…

作者头像 李华
网站建设 2026/10/21 2:35:02

混合研究设计里,定性和定量谁先谁后怎么定

"访谈做了十几场,问卷也收了三百多份,写方法章节时却卡住了:先讲哪一部分?"这类纠结在读研群体里很常见。混合研究设计的难点不在要不要用两种方法,而在顺序——定性定量谁在前、谁在后,直接决定…

作者头像 李华
网站建设 2026/10/21 2:35:01

为什么客户需求沟通后容易被遗漏?

很多人遇到过类似情况,沟通时觉得每句话都听清楚了,回到工位整理需求才发现,不少细节记不清,要么得反复找客户确认,要么到交付时才发现理解有偏差。沟通场景无辅助记录下的信息遗漏率最易被遗漏的信息类型1小时单客户面…

作者头像 李华