基于MATLAB的采样保持器的仿真

Posted fpga和matlab

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基于MATLAB的采样保持器的仿真相关的知识,希望对你有一定的参考价值。

目录

一、理论基础

二、部分MATLAB程序

三、仿真结论分析 


一、理论基础

       考虑一个简单的采样保持器电路,如图1所示,其中R0远大于Ri。开关周期为T,然后假设采样是在开关闭合的时候立刻完成的,然后也是快速的打开。因此,输入信号e(t)采样后可以得到e(kT)。信号e(KT),进行电路分析,计算一个采样周期T,t(KT,(K+1)t)的响应函数m(t)。描述一下这响应曲线,然后分析这个电路的阶数。分析电容C式怎么影响这个保持器的结果的。如果RI和RO都为10欧姆,C是0.1F,1F,10F,然后T分别设置为1s和2s,画出m,然后分析结论。

        根据电路系统的相关原理可知,信号通过该电路之后,得到信号满足如下的关系式:

根据问题一的要求,我们首先对电路进行理论上的分析。

        根据电流守恒公式,可以列出如下的微分方程式:

        由于C和R0是并联结构,所以两个电路支路电压都可认为是。那么根据电流守恒(输入=输出)我们可以得到如下的守恒公式:

 

二、部分MATLAB程序

matlab仿真程序1:

clc;
clear;
close all;
warning off;

Ri = 10;
Ro = 10;
N  = 300;

%设置输入信号的是一个阶跃信号
for k = [1:1:N]
    e(k) = 10;
end

%T=1,C=0.1
C  = 0.1;
T  = 1;
for k = [1:1:N]
    m(k) = e(k)*( Ro/(Ro+Ri) - exp( -(Ro+Ri)*k*T/(Ro*Ri*C) ) ); 
end
figure(1)
plot([1:1:N],m,'g-','linewidth',2);

%T=1,C=1
C  = 1;
T  = 1;
for k = [1:1:N]
    m(k) = e(k)*( Ro/(Ro+Ri) - exp( -(Ro+Ri)*k*T/(Ro*Ri*C) ) ); 
end
hold on
plot([1:1:N],m,'y-','linewidth',2);

%T=1,C=10
C  = 10;
T  = 1;
for k = [1:1:N]
    m(k) = e(k)*( Ro/(Ro+Ri) - exp( -(Ro+Ri)*k*T/(Ro*Ri*C) ) ); 
end
hold on
plot([1:1:N],m,'m-','linewidth',2);

%T=2,C=0.1
C  = 0.1;
T  = 2;
for k = [1:1:N]
    m(k) = e(k)*( Ro/(Ro+Ri) - exp( -(Ro+Ri)*k*T/(Ro*Ri*C) ) ); 
end
figure(1)
plot([1:1:N],m,'b-','linewidth',2);

%T=2,C=1
C  = 1;
T  = 2;
for k = [1:1:N]
    m(k) = e(k)*( Ro/(Ro+Ri) - exp( -(Ro+Ri)*k*T/(Ro*Ri*C) ) ); 
end
hold on
plot([1:1:N],m,'r-','linewidth',2);

%T=2,C=10
C  = 10;
T  = 2;
for k = [1:1:N]
    m(k) = e(k)*( Ro/(Ro+Ri) - exp( -(Ro+Ri)*k*T/(Ro*Ri*C) ) ); 
end
hold on
plot([1:1:N],m,'k-','linewidth',2);
grid on;
legend('T=1,C=0.1','T=1,C=1','T=1,C=10','T=2,C=0.1','T=2,C=1','T=2,C=10');
xlabel('Sample Times(s)');
ylabel('m(t)');
axis([0,N,-5,6]);





三、仿真结论分析 

仿真结果如下:

 

 从上面的仿真结果可知,

当T不变的时候,C从小变大的时候,m(t)的的响应时间越长。

当C固定,改变时间T的时候,当T越大,m(t)的的响应速度越快。

A28-18

以上是关于基于MATLAB的采样保持器的仿真的主要内容,如果未能解决你的问题,请参考以下文章

通信仿真基于matlab数字信号增量调制含Matlab源码 2381期

数字信号基于matlab轴承故障仿真信号时域波形图+幅度谱图含Matlab源码 001期

基于MATLAB的波速形成仿真

MATLAB中的FFT的采样频率和采样点怎样确定?

Matlab增采样仿真——代码实现

如何在保证仿真精度的情况下提高仿真速度