新闻详情

新闻详情

首页 / 资讯中心 / 详情

自制高精度微电容测量系统:从相敏检波到杂散电容校准

发布时间:2026/9/27 23:23:12来源:尧图网络
自制高精度微电容测量系统:从相敏检波到杂散电容校准
我没有按固定模板去套而是直接把当时做这个项目时的真实思考过程、选型经过和踩坑记录整理出来。如果你正准备做电容传感器、阻抗测量或者手边缺少一台靠谱的微电容测量设备这篇内容应该能帮你少走不少弯路。1. 为什么普通电容表在关键应用里总是差那口气1.1 这个项目的真实需求做传感器变送器的时候我手里有一批微电容传感器要标定量程大概在 0.1pF 到 100nF 之间核心要求是能稳定分辨 0.1pF 级别的变化。市面上常见的口袋电容表、万用表电容档标称分辨率能做到 1pF 已经算不错实际测量时数值还跳来跳去探头夹上去手指一抖读数就变了。真正让我下决心自己做的是一次标定土壤湿度传感器的经历。传感器本身的电容变化只有 2pF 左右用手头的 LCR 表和电容表反复测每次读数差异比真实信号还大数据贴在 Excel 里根本没法拟合曲线。那一刻我意识到我需要一台专门针对微小电容、能在固定频率下稳定读数、还能量化掉夹具和线缆杂散的系统。这个项目的目标很明确做一台基于 MCU 的自制高精度电容测量系统量程覆盖亚皮法到百纳法激励频率可切换读数必须可重复误差尽量控制在 0.5% 加 0.1pF 的水平。它不追求实验室儀器那样的绝对精度但要能稳定、可靠地用于传感器开发和小批量标定。1.2 性能指标的拆解在设计开始前我先把指标拆解成下面这张表方便后续所有选型都对着它看参数目标值说明测量范围0.1pF ~ 100nF分段覆盖自动量程分辨率0.01pF低量程通过过采样和数字滤波实现基本精度±0.5% 0.1pF各量程校准后达到重复性优于 0.05pF同一条件下多次测量激励频率1kHz / 10kHz / 100kHz适应不同电容介质测量参数电容值、损耗角/ESR不仅测幅值还要看相位接口串口、OLED方便接入上位机和现场读数看到这个表你就明白它本质上是一台简化的数字电桥而不是普通电容表。普通电容表把电容当作一个纯电容来测给一个读数就完了但微小电容测量里引线电感、介质损耗、泄漏电阻都会严重干扰读数所以我必须把测量对象看成一个复数阻抗同时测出实部和虚部再从里面提取电容值。2. 测量原理选型充放电法、谐振法与复数阻抗法的取舍2.1 充放电法确实便宜但做不到高精度网上很多自制电容表用的都是充放电法恒流源给未知电容充电电容电压线性上升当电压超过某个阈值时停止计时时间 T 和电容值 C 的关系是T C × Vth / I只要测出充电时间就能反推电容。这个方法的好处是电路简单MCU 定时器加比较器就能做零件成本几块钱。但坏处也很致命恒流源的稳定度直接决定精度比较器有温漂和失调阈值电压本身也有误差整套系统的非线性来源太多。我算过一笔账如果我希望在 10pF 量程做到 0.1% 精度充电时间大约 10 微秒量级这意味着时间测量分辨率要做到 10 纳秒以下。对普通 MCU 的定时器不是不可能但恒流源温漂和比较器抖动造成的误差早就盖过了这个分辨率。还有一个本质问题充放电法测的是电容储存电荷的能力它把所有能量损耗都打包进结果里无法区分“容性”和“阻性”。当被测电容存在明显 ESR 或者介质吸收时读数会偏离真实电容值而且没有任何办法修正。这对高精度测量来说是根本性的缺陷。2.2 谐振法灵敏度高但量程和收敛性不好搞谐振法思路也很有吸引力用已知电感 L 和未知电容 C 组成 LC 谐振回路通过扫频找出谐振频率 f0再根据 f0 1/(2π√(LC)) 计算电容。这种方法的灵敏度确实高尤其是在高 Q 值回路里谐振点附近的幅值变化非常陡峭理论上可以检测极小电容变化。但它的问题同样突出需要稳定的已知电感电感的温度系数和寄生电容很难控制被测电容变化范围一大谐振频率就跑没影了量程非常窄扫频还需要 VCO 或者 DDS硬件复杂度上升。我一度想过用这个方法做高分辨率变化检测但后面发现一旦换上不同容量的传感器整套回路参数就要重新标定。对一台要给多种传感器做标定的仪器来说这太不实用了。2.3 为什么最终选择正弦激励加相敏检波最后我采用的是目前数字 LCR 表和阻抗分析仪最常用的方案给被测件施加一个单一频率的正弦激励同步采集流过被测件的电流和两端的电压然后通过相敏检波解算出复数阻抗。对于电容阻抗的模值 |Z| 1/(ωC)相位接近 -90°。测到完整的复数阻抗后电容值可以直接提取C 1 / (ω × |Z|)相位分量则可以换算出 ESR 和损耗角正切 tanδ。这样做的好处是测量不依赖恒流源的稳定性不依赖电感精度主要误差源变成了激励幅值精度、采样通道的相位一致性和 ADC 的有效位数而这几个指标在现代器件里可以做得非常高。从实现角度看关键是“同步”。只要激励信号和采样参考都由同一个时钟源派生相位误差就可以控制得极小噪声通过相干平均被压下去。这个方法在原理上最干净后续的所有软硬件工作都围绕它展开。3. 硬件链路搭建从激励源到 ADC 的前端细节3.1 整机信号链与关键器件选型我的信号链路是这样设计的MCU(STM32F303) → DAC/正弦表 → 激励缓冲运放 → 被测电容DUT → 跨阻放大器TIA → 可编程增益PGA → 24bit Σ-Δ ADC → MCU激励源我用 STM32F303 的 DAC 加 DMA 循环输出正弦波。F303 主频 72MHzDAC 更新速率可以跑到 1MSPS 以上配一个低通滤波器就能得到还不错的正弦波。当然你也可以用独立的 DDS 芯片比如 AD9833频率准确度和相位噪声更好但对我来说 MCU 内置 DAC 加外部滤波足够还能省一颗芯片。关键在于激励缓冲器。DAC 输出阻抗不低直接驱动电容会导致信号源阻抗和被测电容形成分压而且阻抗随频率跑偏。我选择一级单位增益缓冲器用低输出阻抗运放把正弦波隔离出来这样被测电容看到的激励源几乎是理想电压源。缓冲器输出再经过一个 100Ω 左右的串联匹配电阻用于抑制反射。跨阻放大器 TIA 是这个系统的核心。被测电容一端接激励另一端接运算放大器的反相输入端反馈网络把流过电容的电流转换成电压。反相端是虚地所以被测电容的低端被固定在 0V这能有效消除低端杂散电容的影响。反馈电阻 Rf 决定跨阻增益反馈电容 Cf 用于相位补偿防止自激。运放选型上我推荐低偏置电流、低噪声、带宽够用的精密运放比如 OPA2277、AD8628 这类器件。偏置电流必须小因为皮法级电容在 1kHz 下的阻抗高达上百兆欧哪怕 1nA 的偏置电流都会在反馈电阻上产生明显误差电压。ADC 我用的是 ADS125624 位带可编程增益放大器内部有多阶数字滤波。它支持差分输入刚好可以测 TIA 输出和激励参考。实际用下来这个 ADC 的噪声性能对 0.1pF 分辨率来说是绰绰有余的反而是模拟前端容易被 PCB 寄生拖后腿。3.2 模拟前端最容易翻车的几个点第一个坑是带宽和增益的关系。TIA 的反馈电容 Cf 和运算放大器输入电容一起组成一个极点如果反馈电容太大带宽被压得很低高频激励时增益就开始下降读数随频率明显偏移。解决办法是每个量程单独设置反馈电阻和反馈电容而不是用一个固定网络硬扛全频段。第二个坑是运放的共模输入电压。被测电容接在激励和虚地之间运放反相端电压被虚地稳定在 0V 附近但如果运放不是轨到轨输入靠近负轨时线性度会变差。实测发现用普通运放在小信号时会出现可测量的非线性换轨到轨精密运放后读数立即稳定了。第三个坑是 PGA 和 ADC 之间的接口。ADS1256 输入阻抗不够高时PGA 输出经过分压会损失精度必须确保 PGA 输出阻抗远小于 ADC 输入阻抗或者干脆在中间加一级跟随器。我最初少量测试时漏了这个100kHz 频率下读数明显偏低后来才发现是阻抗匹配问题。3.3 屏蔽、保护环与被测件夹具有多重要高精度微电容测量的成败一半在夹具。这不是夸张而是亲身教训。裸露的杜邦线两根并排走 1cm分布电容就有零点几皮法这对 0.1pF 的测量目标来说是不可接受的。我采用的做法是给被测电容做一个小型屏蔽盒中心信号极用聚四氟乙烯绝缘子支撑外围是一圈接地屏蔽。屏蔽盒上盖可开合被测件夹在两片黄铜触点之间接触面镀金。这样固定住测量环境避免人手直接触碰夹具。更关键的是驱动屏蔽技术。屏蔽层如果直接接地它和中心信号线之间会形成一个固定电容虽然数值确定但这个电容并联在被测件两端难以完全校准掉。我改用缓冲器驱动屏蔽层让屏蔽层的电位始终跟随中心信号电位。电位相等意味着两者之间没有电场分布电容的影响被大幅削减剩下的只是缓冲器失调和驱动能力导致的微小残余。此外连接被测件时我采用开尔文式接法也就是把激励线和采样线分开走。虽然只是单端测量但把 TIA 虚地端的取样线独立引出可以避免大电流走线上的压降被计入测量信号。这种细节在测量微小电阻和低 ESR 电容时特别有用。4. 固件算法怎样把 0.1pF 的真值从噪声里抠出来4.1 数字相敏检波的实现细节我一开始用模拟乘法器做相敏检波就是用 AD630 那类器件把信号和参考相乘再用低通滤波器取平均值。试了一段时间发现两个问题模拟乘法器的失调漂移难以消除低通滤波器响应慢量程切换后要等很久才能稳定。后来干脆改成数字解调ADC 直接采样 TIA 输出电压和激励参考信号在 MCU 里做相关运算。核心思路是如果采样序列是 x[n]参考余弦序列是 i[n]参考正弦序列是 q[n]那么信号的同相分量和正交分量为I (2/N) × Σ x[n] × i[n] Q (2/N) × Σ x[n] × q[n]只要采样序列 xn 和参考序列长度 N 正好覆盖整数个激励周期这个运算就是离散傅里叶变换DFT的简化形式。幅值 mag sqrt(I² Q²)相位 phase atan2(Q, I)。下面是核心循环的简化代码// samples[] 是 ADC 采集的一帧数据N 是采样点数 // ref_i[] 和 ref_q[] 是与激励同频的余弦、正弦参考序列 int64_t acc_i 0, acc_q 0; for (uint16_t idx 0; idx N; idx) { acc_i (int64_t)samples[idx] * ref_i[idx]; acc_q (int64_t)samples[idx] * ref_q[idx]; } float I (float)acc_i * 2.0f / N; float Q (float)acc_q * 2.0f / N; float mag sqrtf(I * I Q * Q); float phase atan2f(Q, I);这个方法相当于数字锁相放大器。它只对指定频率感兴趣其他频率的噪声分量在长平均中会相互抵消等效带宽很窄。激励频率为 10kHz 时采样 1000 个点相当于只看了 0.1 秒窗口里的信号白噪声被压到很低0.1pF 的变化就能清晰露出来。实际使用时要特别注意采样时钟和激励信号时钟必须同源。我从同一个定时器产生 DAC 触发和 ADC 触发保证 ADC 采样点和正弦波形的相位关系固定。如果两者各自独立运行频率稍有偏差I/Q 运算就会出现栅栏效应读数周期性抖动。4.2 自动量程和切换后的稳定策略自动量程分为“预判”和“精测”两步。先让系统给被测电容施加一个较小的激励电压通过 TIA 的输出幅度粗判电容大小选择合适的反馈电阻和 PGA 增益然后才开始正式采样计算。量程切换不能无缝进行。切换反馈网络之后运放需要时间建立大电容还会在切换瞬间产生电流尖峰所以我程序里必须留足稳定时间。实测下来10pF 以下量程切换后稳定 2ms 足够100nF 量程则要等 20ms 以上。稳定期内 ADC 数据直接丢弃不参与计算。PGA 增益切换也类似而且增益网络的校准系数是独立的。切换增益后如果读数跳变不一定是被测件变化而是两个增益档之间存在增益误差。我靠量程校准把每个档位的增益系数存进 Flash切换后乘上对应系数读数才能平滑衔接。4.3 校准矩阵的工程落地仪器做出来之后校准是躲不掉的一环。我采用的校准流程是每个量程内做三步开路校准断开被测件记录残余信号包括夹具杂散电容和运放失调。短路校准把夹具短路记录寄生阻抗用于修正 ESR 和相位误差。标准电容校准接入已知容量的标准电容计算实际增益和系统相位延迟。实际处理时我把测量结果先做“开路扣除”再做“增益修正”。对于线性度要求高的场合还可以在每档多测一个标准电容做两点直线校正甚至做多项式拟合。下面这个公式是我在固件里实际用的修正逻辑Z_correct (Z_meas - Z_open) × (C_std / (Z_meas_std - Z_open))其中 Z_meas_std 是接入标准电容时的原始读数。这样处理后系统对夹具杂散电容和信号链增益误差的敏感度明显下降。5. 标定、误差源与几段反复折腾的踩坑记录5.1 PCB 杂散电容不是玄学是物理第一次打样回来开路读数直接是 5.3pF按照设计预期应该是 0.1pF 级别。排查了很久发现问题是反馈电阻旁边的走线太靠近输入端两条平行走线有 8mm 长距离 0.4mm分布电容大概增加了 1.2pF。再加上顶层覆盖的铺铜和 vias 形成的寄生整体就冲到 5pF 以上了。解决办法是把 TIA 输入端周围做成空心保护区也就是所有靠近反相端的走线全部避开在关键节点底下不放地铜因为地铜和信号线之间的电容也会贡献杂散。输入端的走线尽可能短直接从被测件到运放反相端中间不要过孔。改版后开路读数降到了 0.4pF配合算法里的开路校准最终残余可以压到 0.1pF 以下。5.2 介质吸收为何测完大电容后机器会“记仇”有一次测完一个 47µF 电解电容后马上切到皮法量程测标准电容读数反复回不到正常值。起初以为是继电器没断开排查了一圈最后发现是介质吸收在作怪。介质吸收是大电容内部材料的一种“记忆效应”电容被充电后即使外电路已经放电内部介质还会缓慢释放残余电荷导致电容相当于一个带微小电荷源的存储元件。这种效应在高精度测量里非常讨厌它会表现为基线偏移而且需要很长时间才能恢复。从那以后我在固件里加了一个“放电等待工序”每次切换量程或者换被测件之前先让 DUT 两端短路 1 秒再开始正式测量。另外在程序里检测到当前测量值明显偏离上一档位时会多等一下再重新采样。这个小改动帮我省了很多无效数据。5.3 温漂问题与运放、PGA 的选型教训设备在实验室 25°C 环境里校准得很完美拿到现场测试时读数整体偏了 0.8%而且随温度变化。复盘发现问题出在两处一是反馈网络里的电阻使用了普通贴片电阻温漂系数正负几十 ppm 甚至上百 ppm二是 PGA 的增益漂移没做补偿。解决方法是把反馈电阻换成低温度系数的金属箔电阻或者使用 0.1% 精度、25ppm 温漂的薄膜电阻。关键位置必须用 C0G/NPO 电容做反馈电容绝不能用 X7R 电容后者在 1kHz 下的容值随温度和电压变化明显用在反馈网络里会直接写入误差。同时我在固件里做了一维温度补偿板上加了一个温度传感器每个量程的校准系数按温度区间分段存下来用线性插值修正。这样在 10°C 到 40°C 的范围内系统精度的恶化控制在 0.15% 以内基本满足了现场使用的需求。6. 实测结果与性能对比6.1 测试工装与参考设备测试时我用了一组标称容量经过第三方计量过的标准电容以及一块实验室使用的数字电桥作为参考。被测件夹持在屏蔽盒内确保测量环境一致。每组读数重复测量六次取平均值和极差。对比时我特别关注低量程的表现因为那里最考验系统下限。标准电容的容量标称值在小数值上有一定误差所以我更看重的是重复性而不是绝对偏差。6.2 典型量程的实测数据下面这张表是 10kHz 激励频率下的一组代表性数据标称容量系统读数重复性极差相对偏差0.82pF0.83pF±0.01pF1.2%10.0pF10.04pF±0.02pF0.4%100.0pF100.2pF±0.05pF0.2%1.00nF0.998nF±0.01nF-0.2%100nF99.6nF±0.2nF-0.4%0.82pF 那个数据相对偏差有 1.2%看着比 1% 精度目标差但考虑到绝对值只有 0.01pF 的误差实际上这已经达到 0.1pF 级别的绝对精度目标。系统在 10pF 到 100nF 区间内表现很好基本落在 ±0.2% 到 ±0.4% 的范围内10pF 以下主要被夹具残余和噪声拖累。对比普通万用表在同一批电容上的表现普通表在 10pF 档的读数几乎只有一位有效数字而且每次测量的跳动范围超过 1pF根本无法完成传感器标定。这套系统的重复性至少高了一个数量级。6.3 还留在桌面上的问题与可扩展方向目前系统主要有两个不足。第一是激励频率只有三个固定点对于研究电容介质频率响应来说不够用后续可以改成扫频模式在 1kHz 到 100kHz 之间连续扫描第二是校准过程还是半手动的需要人工更换标准电容将来可以设计一个内置多档标准电容阵列通过继电器自动接入把校准流程做成完全自动。器件层面如果不想自己搭模拟前端也可以考虑 AD5941 这类集成阻抗测量芯片它们内置了激励发生器和阻抗测量前端BOM 能简化不少。但用通用运放和 ADC 的好处是每个环节都可调、可查方便深入理解测量链路的误差来源。7. 如果再做一版我会把时间花在这几件事上整套项目做下来我最大的体会是高精度电容测量难的不是“测准”而是“把环境固定住”。夹具屏蔽、杂散电容、介质吸收、温漂这四个问题每一个都比 ADC 位数更影响最终结果。数据不好看的时候先别怀疑算法和芯片先去看你的测件环境是不是一直在变化。如果让我再设计一版我会优先做三件事一是把被测件夹具做成带温度监测的密封结构让环境因素可量化二是增加自动校准序列把开路、短路、标准电容的切换做成按键触发的一键流程三是预留外部触发接口方便传感器动态测试时同步采集其它信号源。最后分享一个小技巧在固件里我会周期性地对同一电容重复测量把最近 20 次读数的标准差算出来直接当作“健康指标”显示在屏幕上。当标准差突然变大说明外部干扰或者夹具接触出了问题这时候做多少次理论分析都不如直接看一下这个数字来得快。这套系统的真正价值也正在于它逼着我把这些细节老老实实处理干净了。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

3个月搞定官网+排名,揭秘网站推广排名公司背后的源码下载陷阱 2026/9/28 0:11:37

3个月搞定官网+排名,揭秘网站推广排名公司背后的源码下载陷阱

3个月搞定官网+排名,揭秘网站推广排名公司背后的源码下载陷阱 改个需求建站公司拖一周,源码下载还要加钱?这种憋屈事,我见得太多了。很多老板花几万块找所谓的 网站推广排名公司…

阅读更多 →
WordPress新版无法保存?5个排查步骤+最佳实践 2026/9/28 0:10:58

WordPress新版无法保存?5个排查步骤+最佳实践

WordPress新版无法保存?5个排查步骤+最佳实践 刚接手一个重庆做建材外贸的站点,后台一进去就发现不对劲。客户急得直跺脚,说刚改完产品描述,点保存没反应,刷新页面全没了。更吓人的是,之前有次更新完插件,首页突然弹出一堆博彩广告,点进去…

阅读更多 →
军博做网站公司从零搭建官网避坑指南 2026/9/28 0:10:51

军博做网站公司从零搭建官网避坑指南

军博做网站公司从零搭建官网避坑指南 网站做好了没人访问,这大概是很多站长最头疼的事。你花大价钱找 军博做网站公司 ,甚至自己 从零搭建 ,结果上线半个月,后台流量还是个位数。别急着怪算法,大概率是底子没打对。…

阅读更多 →
做游戏用什么电脑系统下载网站看3个实战案例 2026/9/28 0:10:32

做游戏用什么电脑系统下载网站看3个实战案例

做游戏用什么电脑系统下载网站看3个实战案例 别再被那些花里胡哨的模板网站忽悠了,看着高大上,实际跑起来卡顿、加载慢,用户留不住。很多刚入行的运营或者小团队老板,总想着找个“做游戏用什么电脑系统下载网站”这种关键词直接套模板,结果上线后发现搜…

阅读更多 →
不会代码做wordpressforum要花多少钱? 2026/9/28 0:10:26

不会代码做wordpressforum要花多少钱?

不会代码做wordpressforum要花多少钱? 手里拿着域名,脑子里全是想法,但打开编辑器就头大,自己不会代码想做网站,这大概是无数创业者最真实的写照。你想知道搞个 wordpressforum…

阅读更多 →
揭阳百度推广优化避坑指南:5个免费工具提升30%转化 2026/9/28 0:08:50

揭阳百度推广优化避坑指南:5个免费工具提升30%转化

揭阳百度推广优化避坑指南:5个免费工具提升30%转化 改个需求建站公司拖一周?别忍了。很多揭阳老板觉得百度推广难搞,其实是被“黑箱”操作坑了。今天直接甩出5个 免费工具 ,教你自己盯数据,不再当冤大头。 运营目标与指标:别只看点击量…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉