矿石收音机论坛

 找回密码
 加入会员

QQ登录

只需一步,快速开始

搜索
楼主: 小鬼头

合作设计基于mcu的数字式电容ESR表

  [复制链接]
     
发表于 2023-4-5 21:40:28 | 显示全部楼层
xjw01 发表于 2023-4-5 16:41
16点采样,谐波分量已较小。大于15次的高次谐波没有画出来。
高次谐波很容易滤除,用两个RC滤波器就清除 ...

好的,谢谢许老师。
回复 支持 反对

使用道具 举报

发表于 2023-4-6 00:47:08 来自手机 | 显示全部楼层
越来越复杂了,有没有老师能普及普及原理,谐波出来了,测esr和傅里叶变换有什么关系
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2023-4-6 08:47:15 来自手机 | 显示全部楼层
abbey_tom 发表于 2023-4-4 21:56
还是计划用SPWM做激励吗?

如果就我们这样的测量需求来说,我觉得spwm方案还比不上dac生成正弦波的方案。

mcu里面的dac能力,我不了解。我知道,cd机的音频处理技术,就相当于dac生成正弦波的情形。

他的特点是载波(采样频率)可以远高于目标正弦波频率。比如100hz,cd机的采样频率是44khz,如果mcu能力允许的话,可以改为1Mhz。这样,按采样频率来设计滤波器即可。而且,不管目标频率多少,采样频率都固定,滤波器也易于设计。

另一个方面,mcu的dac位数比不上cd机的16位(16比特),这只影响测试信号的幅度精度。反映到测量上,是属于增益问题,而不是非线性问题。精度差一些不会有什么大碍,只要这个幅度足够稳定即可。因为这里可采用增益校准手段,把精度不足这一不利因素消除掉。

只是,我们目前还不一定需要使用上这样的技术手段。。

回复 支持 反对

使用道具 举报

     
发表于 2023-4-6 09:50:52 | 显示全部楼层
小鬼头 发表于 2023-4-6 08:47
如果就我们这样的测量需求来说,我觉得spwm方案还比不上dac生成正弦波的方案。

mcu里面的dac能力,我 ...

abbey_tom 坛友之前选用的 MCU 可能不带 DAC,但 PWM(定时器)属于多数单片机都有的,所以一般要求不高的话都考虑用 PWM 代替 DAC

且一般单片机 PWM 有 16 位,DAC 多数位数也不高(当然这里不重要)

所以假设采用单片机直接生成正弦波方案,选择 SPWM 还是 DAC 也属于选型问题,需要的硬件资源不同,因为你们显然不打算外挂一个
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2023-4-6 11:13:00 | 显示全部楼层
小鬼头 发表于 2023-4-4 21:38
刚才我似乎把这个整流电路的增益计算公式推导了出来。

我推导的结果是,增益大小与电容无关,只与3只 ...


1、昨天休息在家,一直在想这个整流电路的增益计算问题。

我推导出来的增益计算公式是:Gain=[R1*(R1+R2+R3]/[R2*(R1+2*R3)].

按这个公式,取不同的R1、R2、R3组合,可以计算出整流增益。用这个计算结果与前天仿真出来的粗糙数据作对比,两者改变同一个阻值,对增益产生影响的趋势是一样的,说明有合理性。但改变程度有出入,因此,怀疑推导有错。

然后又对推导过程进行反复核实,经过几个回合,还是回到原点。今天有电脑可用,可以看看仿真软件对该整流电路的运行情况,发现之前有很大差异的数据,是因为运放出现了限幅而造成。其他数据偏差仍在,但在缩小。


2、为了搞清楚情况,今天搭了一个理想器件、理想情况(方波输入)的电路,如下图,用于核实我的增益计算是否准确。

可是,又发现一个问题,就是电容C会影响仿真真正结果出来的时间,因为仿真运行需要时间。具体是:

下面这个图,按我计算的结果,应该出来的是7.000000V的DC电压。现在仿真是用高频(1M方波)作信号源,每次给电容充进的电量太小,所以运行需要时间更长,等不及。图中是中途出来的结果,DC输出只有0.5V。如果改变仿真的输入频率为1Khz,等一段不长的时间后,仿真显示的DC输出电压为7.104V。

也曾试过将图中的R2改为10k。按我计算结果,应该出来的DC电压是1.666667V。电容C取值小(忘记当时是多少)时,1khz频率时,等一段时间出来的结果是1.5V左右,如果改大10倍(或100倍,忘了),等一段时间出来的DC电压是1.666V。







数字式ESR表仿真结果(整流增益专项研究时的仿真场景).jpg
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2023-4-6 11:18:36 | 显示全部楼层
小鬼头 发表于 2023-4-6 11:13
1、昨天休息在家,一直在想这个整流电路的增益计算问题。

我推导出来的增益计算公式是:Gain=[R1*(R ...

现在半个小时过去了,仿真软件从上面图的情况变为下面的情况。

图右下角显示的0.072秒,应该是指电路启动后的时间点。这个不熟悉,washu应该比较了解。

数字式ESR表仿真结果(整流增益专项研究时的仿真场景)2.jpg
回复 支持 反对

使用道具 举报

     
发表于 2023-4-6 11:59:35 | 显示全部楼层
小鬼头 发表于 2023-4-6 11:18
现在半个小时过去了,仿真软件从上面图的情况变为下面的情况。

图右下角显示的0.072秒,应该是指电路 ...

是这样,电路从初态开始运行的时间

另外你在图里放了虚拟仪器,这个是 MS 的交互式仿真,但类似这样(给电容充电)的情况用瞬态分析比较好
无标题ms3.png

瞬态分析可以指定开始和结束的时间,这里设为 0 秒(开始)、0.1 秒(结束),典型的电容充电曲线
无标题ms2.png


为了加速,可以给电容赋初值比如 6V,然后分析 0.1 秒,结果已经非常接近 7V,但这样花的时间较少
无标题ms1.png



btw. 你要跑半小时才能跑 0.072秒?我这里只要 3 分钟这样,电脑还是十几年前的老电脑
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2023-4-6 12:07:46 | 显示全部楼层
本帖最后由 小鬼头 于 2023-4-6 12:16 编辑
小鬼头 发表于 2023-4-6 11:13
1、昨天休息在家,一直在想这个整流电路的增益计算问题。

我推导出来的增益计算公式是:Gain=[R1*(R ...


现在说一说,我是如何推导得到增益计算公式的。如下图。

1、在正半周期间,D1截止,D2导通。

此时,D2负极处的电压是受运放负反馈控制的,其大小为Vout。根据运放负反馈计算公式,Vout=Vin*[(R1+R2)/R2]。因此,此Vout是已知的,且此点是低阻抗输出源。

此电压经过R3给电容C充电,电容上的DC电压为Vc,因此,电容在正半周的充电电流为Ic=(Vout-Vc)/R3。

2、在负半周期间,D2截止,D1导通。

此时,电容处于放电状态。由于R1与R2的共接点处是运放的负输入端,根据运放的虚短原则,其电位等于运放的正输入端电位。因此,这个共接点是一个内阻低的节点。其电位是Vin,但极性是负向的。

电容C的放电电流经过R3和R1,到达这个低内阻的共接点,因此,电容在负半周期间的放电电流为Id=(Vc+Vin)/(R1+R3)。

3、电容电压Vc进入充放平衡的稳定状态。

信号输入开始阶段,电容电压Vc低,因此,充电电流Ic大。相应地,负半周时由于Vc小,放电电流Id也小。这样,充进的电量大于放走的电量,电容电压Vc会慢慢上升。

经过若干个信号周期后,电容电压会进入一个稳定/充放平衡的状态。这个状态是电容充进的能量/电量,等于放走的能量/电量。由于能量=功率*时间,又由于正半周的充电时长等于放电时长,因此有:充电功率=放电功率。

在充放平衡的稳定状态里,有:充电时的Vc=放电时的Vc。结合充放功率的相等,可得到,充电电流Ic=放电电流Id。再由这个电流关系得到一个联立方程式。

最后求解联立方程式,可计算得到Vc与Vin的关系,即整流电路的增益计算公式。


数字式ESR表仿真结果(整流增益专项研究时的仿真场景)3(电路图).jpg
回复 支持 反对

使用道具 举报

     
发表于 2023-4-6 15:29:29 | 显示全部楼层
本帖最后由 xjw01 于 2023-4-6 15:31 编辑
小鬼头 发表于 2023-4-6 12:07
现在说一说,我是如何推导得到增益计算公式的。如下图。

1、在正半周期间,D1截止,D2导通。


经过若干个信号周期后,电容电压会进入一个稳定/充放平衡的状态。这个状态是电容充进的能量/电量,等于放走的能量/电量。由于能量=功率*时间,又由于正半周的充电时长等于放电时长,因此有:充电功率=放电功率。
===========================
此问题,用常规方法思考更方便。

输出端得到平稳直流电压,所以充放电平衡,一周期内电荷守恒。即正负半周电流对时间积累值相等。两个半周都是直流电路,积分计算容易。
设输出电压为Uo,输入变U,就输出端而言:
    正半周输出,接在二极管,运放增益 k1=(R1+R2) / R2,负载电阻R3,输出电流 I1 = (k1*U-Uo) / R3
    负半周输出,接在R2上端,运放增置 k2=-1,负载电阻R1+R3,输出电流 I2 = (k2*U-Uo) / (R1+R3)
设周期为2T,那么电荷守恒方程为  I1*T + I2*T=0
把I1和I2的表达式代入得 Uo = U*R1*(R1+R2+R3) / [R2*(R1+2R3)]
如果保证半周其内二极管完全导通,以上计算就是正确的,且偶次谐波将被滤除。因为正弦波在一个完整周期的积分结果为0
当R3>>R1时,Uo对导通角的影响较小,基本上可以估到半周期内完全导通。

从输出阻抗思考:
两个半周,输出阻抗不相同,那么相当于引入非线性元件,会有额外的检波输出。当R3>>R1时,输出阻抗相等。
所以,滤波前做缓冲且不引入电容参数,效果会更好,但要增加运放。
也可以增大R3,后面使用高输入阻抗的ADC

回复 支持 反对

使用道具 举报

     
发表于 2023-4-6 15:56:53 | 显示全部楼层
本帖最后由 xjw01 于 2023-4-6 15:59 编辑
小鬼头 发表于 2023-4-6 12:07
现在说一说,我是如何推导得到增益计算公式的。如下图。

1、在正半周期间,D1截止,D2导通。


不建议二极管检波,建议以下四种方法中选一种(不需要付加专用元件器):
1.直接ADC采样,缺点,不便做仿真。因为后续信号处理要编程。
2.用单片机的端口进行斩波
这个方案,可以在仿真软件中模拟。
信号小于0.2V的,直接用单片机端口暂波,否则要加偏置。

这两种方法,都可以得到真ESR,满量程时,D值分辨到0.001是没问题的,精度良好且无须校准。
3.用方波,结合斩波,缺点:要编程
4.用脉冲波
给元件一个冲击信号,ADC以最快速度读取冲击后的响应,这样就可以计算出L、C、R参数,缺点:要编程

以上几种方法,我都测试过的。量程范围及精度有一些差别,对精度没有特殊要求时,都可以的。
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2023-4-6 16:44:56 | 显示全部楼层
本帖最后由 小鬼头 于 2023-4-6 16:47 编辑
小鬼头 发表于 2023-4-6 11:13
1、昨天休息在家,一直在想这个整流电路的增益计算问题。

我推导出来的增益计算公式是:Gain=[R1*(R ...


Multisim的仿真分析又出问题。下面2个图里,我计算公式得到的结果应该是33.6667V。



图1是MS的仿真结果,只有7V多,差得太远。当时吓我一跳,还在怀疑我的分析推导是不是有问题。该电路,使用的已经是理想二极管、理想运放。

图2是TINA的仿真结果,有33.02V,这回心安了很多。他使用了理想运放,而二极管还不是理想的。。。。。他的理想二极管在哪找到?我不会找。。。

数字式ESR表仿真结果(整流增益专项研究时的仿真场景)4(MS分析结果).jpg

数字式ESR表仿真结果(整流增益专项研究时的仿真场景)5(TINA分析结果).jpg
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2023-4-6 16:59:40 | 显示全部楼层
washu 发表于 2023-4-6 11:59
是这样,电路从初态开始运行的时间

另外你在图里放了虚拟仪器,这个是 MS 的交互式仿真,但类似这样( ...

就是单位里的破电脑,应该早淘汰了。不过,应付文档处理还是够用的。

而我本来想多装一个LTspice,但他太弱了,现在还不敢装。

PS:10多年前买过MS的教程书,但我用MS很少,那书只翻了几页,因为我不搞设计,电子方面也就是业余玩玩。前两天想起,可以用他的蒙地卡罗分析,来帮助为整流电路合理选取元件值,想找回那本书,可不知扔哪里了。
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2023-4-6 17:05:31 | 显示全部楼层
guodegang 发表于 2023-4-6 00:47
越来越复杂了,有没有老师能普及普及原理,谐波出来了,测esr和傅里叶变换有什么关系

我在55楼讲过相关的内容
回复 支持 反对

使用道具 举报

     
发表于 2023-4-6 17:20:54 | 显示全部楼层
小鬼头 发表于 2023-4-6 16:44
Multisim的仿真分析又出问题。下面2个图里,我计算公式得到的结果应该是33.6667V。

还是你之前用 5532 的问题,运放模型的 VSW,MS 的三端运放默认 VSW 是正负 12V(显然和 5532 一样...),该电路要输出 30 多伏显然要设置合适的 VSW 才行

无标题ms4.png



理论上讲基于 SPICE 的仿真软件(结果)应该都差不多,但 MS 的很多设置细节,确实和其它 SPICE 软件不太一样...至于为什么我也不明白,但很多这方面的细节是从 EWB 时代(MS 上世纪的名字,我读书的时候就叫 EWB)传承的,比如 5532 的模型里还写着是 EWB 时代的



回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2023-4-6 17:27:06 | 显示全部楼层
washu 发表于 2023-4-6 17:20
还是你之前用 5532 的问题,运放模型的 VSW,MS 的三端运放默认 VSW 是正负 12V(显然和 5532 一样...) ...

MS的理想运放还得有电压摆幅的条件限制,这可真够坑的。

搞得我这两天都不安心。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 加入会员

本版积分规则

小黑屋|手机版|矿石收音机 ( 蒙ICP备05000029号-1 )

蒙公网安备 15040402000005号

GMT+8, 2025-4-29 18:03

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表