0
点赞
收藏
分享

微信扫一扫

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


目录

​​一、理论基础​​

​​二、部分MATLAB程序​​

​​三、仿真结论分析 ​​

一、理论基础

基于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的采样保持器的仿真_响应时间_02

 

基于MATLAB的采样保持器的仿真_响应时间_03

二、部分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]);




三、仿真结论分析 

仿真结果如下:

基于MATLAB的采样保持器的仿真_理论基础_04

 

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

 从上面的仿真结果可知,

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

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

A28-18

举报

相关推荐

0 条评论