信号在脑子里面应该是什么样的(二)

电子硬件技术 电子工程技术
硬件工程师炼成之路    2020-12-25    820

  上节我们讲的主要观点是:信号在我们脑海里面应该是以频谱的方式呈现,也就是各种频率的正弦波。

  原因也说了,电感和电容的阻抗公式只能适用于正弦波。而正巧的是,傅里叶变换能将任何信号都变成正弦波的叠加。因此,我们处理信号正确的方式是,先将信号变成各种信号正弦波,然后通过电路,再合并起来,就是我们最终的信号。我举了方波通过RC滤波器之后波形的例子。

图片.png

  不过呢,上节我并没有做实验认证,这次就来补上,本节主要内容也是做实验的过程,主要是使用Matlab编程,并找了网友焊接的RC滤波器电路板实验,互相印证。

  网友的电路实测的帖子,文末会给出链接,下面详细介绍下。

  理论基础

  目的:确定方波通过RC低通滤波器之后的精确波形


图片.png

  我们按照上面思路求得输出波形公式,过程如下:


图片.png

  公式看着有那么点复杂,其实不难,幅度按照比值代入。需要注意的是,要想得到精确波形,仅仅算出各个频率的幅度大小还不行,还得带上相位变化,如此才是准确的。

  Matlab代码

  %参数设置

  R=1000/(2*pi);  %电阻值,2*pi只是为了方便是截止频率为整数

  C=0。000001; %电容

  Fc=1/(2*pi*R*C); %RC滤波器的截止频率

  f=1;  %方波频率1Hz

  omega=2*pi*f; %基频角频率w

  %计算

  t=-1:0。001:1 %坐标轴从-1到1,分辨率为0。001

  n=[1:2:201];  %表示201谐波数的叠加   单行矩阵:1,3,5,7,9…201

  An=4。/(pi*n); %方波的各个谐波的系数  单行矩阵:1,1/3,1/5,1/7,1/9…1/201

  Bn=sin(omega*n'*t); %方波的各个谐波分量  单列矩阵:sin(wt),sin(3wt),sin(5wt)…sin(201wt)   '表示矩阵转置,即行矩阵变成列矩阵

  s_wave=An*Bn;   %方波表达式:单行矩阵乘以单列矩阵,即使方波的表达式(谐波系数乘以对应谐波分量,然后相加)

  figure;         %画图

  plot(t, s_wave);%绘制方波曲线

  hold on;

  Cn= (1。/(1+R^2*omega^2*(n'。^2)*C^2)。^0。5)。*sin(omega*n'*t-atan(R*C*omega*n')); %计算各个谐波分量通过滤波器,并附入相移atan(R*C*omega*n');

  %Cn= (1。/(1+R^2*omega^2*(n'。^2)*C^2)。^0。5)。*sin(omega*n'*t-atan(R*C*omega*n')); %计算各个谐波分量通过滤波器,并附入相移atan(R*C*omega*n');

  rc_wave=An*Cn;  %通过RC滤波器的

  plot(t, rc_wave);

  title(['截止频率=',num2str(Fc)]); %标题显示截止频率是多少

  执行结果

  1Hz方波,通过截止频率为1Hz的低通滤波器波形:


图片.png

  正巧我在某帖子上面看到,有人做过周期矩形波通过低通滤波器的实验


图片.png

  两个实验的结果是同样的,证明了理论的正确性。感兴趣的同学,可以修改代码中的R和C的值,看看方波通过不同截止频率的波形是分别是什么样的。

  有人说方波通过低通滤波器之后变成了正弦波,显然也不是的。


图片.png

  结语

  傅里叶变换应用是非常广泛,写这个文章的目的,是为了让同志们知道傅里叶变换是怎么用的,为什么要用这个,这是我的目的。

  如果您还是在校生,如果这篇文章能让你知道为什么要学习傅里叶变换,那我很欣慰。想当初我在学校的时候,仅仅只是因为要考试才去学。

本文为专栏作者授权科易网发表,版权归原作者所有。文章系作者个人观点,不代表科易网立场,转载请联系原作者。如有任何疑问,请联系ky@1633.com。
热门观点