matlab - 如何在 Matlab 中模拟电容器行为?
问题描述
根据 hyperphysics.edu,它说电容器上的电压可以表示为Vo(1-exp(-t/RC))。
我想有一种将这种建立行为应用于信号的方法,但不太知道如何做到这一点。
在matlab中,如果我这样做:
t = 0:0.0001:0.05-0.0001;
tau = 0.005;
c = 1-exp(-t/tau);
s = zeros(1,1000);
s(201:600) = ones(1,400);
c看起来像我期望的电容器充电的样子。s 是您打开和关闭电源时输入电压的理想值。我想要的是能够应用那个 C 模式。我不确定这样做的数学方法是什么。我认为这是你会使用卷积的那种想法,所以我尝试了
o = conv(s,c(500:-1:1));
但是,将上升动作显示为直线上升的绘图看起来不正确,所以我认为我还需要做其他事情。
如果您有 RC 常数,需要应用什么样的操作或方法来模拟电容器如何作用于某些输入电压信号?
解决方案
电容项应该只包括指数,并且卷积已经翻转了第二个向量,因此不需要再次翻转它。
dt=0.0001;
t = 0:dt:0.05-dt;
tau = 0.005;
c = dt/tau*exp(-t/tau);
s = 零(1,1000);
s(201:800) = 1;
o = 转换(s,c);
tt=(0:(长度(o)-1))*dt;
图;情节(tt,o)
推荐阅读
- angular - ag-Grid:找不到匹配的行模型 rowModelType 客户端
- scala - 为什么 scala 在有换行符且没有等号时评估类型别名?
- angular - ngx-formly ng-select formcontrol 更改发出的值
- python - Pandas Groupby 2 列中的至少 1 列匹配
- django - 如何在 Django 中使用带参数的反向 url 查找?
- c# - foreach 循环仅针对字符串中的某些字符
- python - 纸浆优化,无法向模型添加目标函数
- c# - 如何更好地构建功能以定位信息并影响应用程序中的许多不同图块?
- java - 如何在 Spring 中重定向到另一台主机
- python - 在取熊猫中数据框的特定子集的平均值时如何获得更好的性能?