打印

多路反馈带通滤波器e24电阻搜寻程序学习笔记

[复制链接]
918|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
沙发
叶春勇|  楼主 | 2020-4-14 16:28 | 只看该作者

使用特权

评论回复
板凳
叶春勇|  楼主 | 2020-4-14 16:30 | 只看该作者
解表达式matlab程序:
clear all;
clc;
syms r1 r2 c1 c2 r3 s vi vo vx vn vp
eq1=(vi-vx)/r1-vx/r2-(vx-vo)*s*c2-(vx)*s*c1
eq2=(vx)*s*c1-(-vo)/r3
hs=solve(solve(eq1,vx)-solve(eq2,vx),vo)/vi
hs=collect(hs,s)

使用特权

评论回复
地板
叶春勇|  楼主 | 2020-4-14 16:31 | 只看该作者
电容c1,c2相等。搜电阻程序。python
import itertools
import math
_E24=[1.0,1.1,1.2,1.3,1.5,1.6,1.8,2.0,2.2,2.4,2.7,3.0,3.3,3.6,4.3,4.7,5.1,5.6,6.2,6.8,7.5,8.2,9.1]
E24=[]

C=100e-9
for i in range(0,6):
    E24.extend(list(map(lambda x:(x*(10**i)),_E24)))

def get_omega(r1,r2,r3,c):
    return math.sqrt((1/r1+1/r2)*(1/r3))/c

def get_f(r1,r2,r3,c):
    return get_omega(r1,r2,r3,c)/2/3.1415926

def get_h0(r1,r2,r3,c):
    return 1/(2*3.1415926*50*r1*c)

def get_Q(r1,r2,r3,c):
    return 2*3.1415926*50*r3*c/2

def good_enough(v1,v2,error):
    return abs(v1-v2)<error

for r1 in E24:
    for r2 in E24:
        for r3 in E24:
            if(good_enough(50,get_f(r1,r2,r3,C),0.5) and good_enough(1.5,get_h0(r1,r2,r3,C),0.5) and good_enough(15,get_Q(r1,r2,r3,C),5)):
                print(r1,r2,r3,'H0=',get_h0(r1,r2,r3,C),'Q=',get_Q(r1,r2,r3,C))

使用特权

评论回复
5
叶春勇|  楼主 | 2020-4-14 16:32 | 只看该作者
当f0=50hz,q=10,H0=1,C=100nf

使用特权

评论回复
6
叶春勇|  楼主 | 2020-4-14 16:35 | 只看该作者
仿真程序

仿真测试.jpg (260.43 KB )

仿真测试.jpg

使用特权

评论回复
7
叶春勇|  楼主 | 2020-4-14 16:41 | 只看该作者

MT-218,有一些错误。

使用特权

评论回复
8
HWM| | 2020-4-14 16:43 | 只看该作者
这不仅是比值,通常还涉及到元器件参数大小选择范围问题,因为“负载”效应未必总可以忽略的。

此外,已经说过了,这还涉及到器件参数误差问题。若真要考虑比值精度,建议老老实实地采用相应的精密器件。

使用特权

评论回复
9
叶春勇|  楼主 | 2020-4-14 16:45 | 只看该作者
HWM 发表于 2020-4-14 16:43
这不仅是比值,通常还涉及到元器件参数大小选择范围问题,因为“负载”效应未必总可以忽略的。

此外,已经 ...

我这个搜的都是e24里的元件,穷举一个接近的。减少误差。

使用特权

评论回复
10
HWM| | 2020-4-14 16:54 | 只看该作者
叶春勇 发表于 2020-4-14 16:45
我这个搜的都是e24里的元件,穷举一个接近的。减少误差。

可能你认为得到了一个“较好”比值,但实际元器件的误差或许已经使得比值偏差到了你所期望之外。

另外,按此搜寻,元器件的参数也未必能确保合理。

使用特权

评论回复
11
叶春勇|  楼主 | 2020-4-14 16:59 | 只看该作者
HWM 发表于 2020-4-14 16:54
可能你认为得到了一个“较好”比值,但实际元器件的误差或许已经使得比值偏差到了你所期望之外。

另外, ...

e24 的电阻1%和0.1%的都好买。
滤波器用的电容,薄膜电容。100nf是常用型号,不用定制的。

使用特权

评论回复
12
HWM| | 2020-4-14 17:01 | 只看该作者
叶春勇 发表于 2020-4-14 16:59
e24 的电阻1%和0.1%的都好买。
滤波器用的电容,薄膜电容。100nf是常用型号,不用定制的。 ...

建议你去了解一下精密电阻。

使用特权

评论回复
13
叶春勇|  楼主 | 2020-4-14 18:17 | 只看该作者
本帖最后由 叶春勇 于 2020-4-14 18:25 编辑
HWM 发表于 2020-4-14 17:01
建议你去了解一下精密电阻。

我目前,这种精度就够了。精度再高,没有条件研发了。贴片的精密电阻是金属膜电阻。还有那个工业常用的250欧姆电阻,就知道这些,我目前够用。

使用特权

评论回复
14
HWM| | 2020-4-14 18:33 | 只看该作者
叶春勇 发表于 2020-4-14 18:17
我目前,这种精度就够了。精度再高,没有条件研发了。贴片的精密电阻是金属膜电阻。还有那个工业常用的250 ...

“我目前,这种精度就够了。精度再高,没有条件研发了。”

这种滤波器,原本就无需多么高的精度。况且,即便是采用了这种“配对”,也未必能对精度有实质性的提高。

“贴片的精密电阻是金属膜电阻。还有那个工业常用的250欧姆电阻,就知道这些,我目前够用。”

看来,你对精密电阻还真不太了解。

使用特权

评论回复
15
叶春勇|  楼主 | 2020-4-14 18:40 | 只看该作者
HWM 发表于 2020-4-14 18:33
“我目前,这种精度就够了。精度再高,没有条件研发了。”

这种滤波器,原本就无需多么高的精度。况且, ...

1、这个带通滤波器,中心频率是50hz的。Q值不算大也不算小。
对电容比较敏感。精度要高的。
2、目前我对模拟电路的理解,元器件的差异造成的偏差(系统误差)是可以被软件校准。剩下的就是就是与温漂相关的问题。例如电阻温漂,电压基准温漂,这个才是难搞的。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

151

主题

4810

帖子

50

粉丝