二阶局部有源周期电路输出电压matlab,忆阻器电阻会变化
时间: 2023-07-20 08:44:55 浏览: 178
模拟电子技术课程设计二阶有源带阻滤波器
5星 · 资源好评率100%
如果二阶局部有源周期电路中包含忆阻器元件,而且忆阻器的电阻会随着时间和电压的变化而变化,那么在MATLAB中模拟输出电压时,需要考虑忆阻器的电阻变化对电路的影响。
具体来说,可以使用MATLAB中的Simulink工具箱来建立电路模型,并且在模型中考虑忆阻器的电阻变化。可以使用电压控制电阻(VCR)元件来模拟忆阻器,VCR的电阻值可以由控制电压来调节。可以使用非线性函数模块来定义忆阻器的电阻与时间和电压的关系。
以下是一个示例程序,可以用来模拟具有忆阻器的二阶局部有源周期电路的输出电压:
```
% 设置电路参数
Vin = 10; % 电源电压
C = 10e-6; % 电容值
L = 1e-3; % 电感值
R = 1e3; % 有源元件电阻
A = 10; % 有源元件放大倍数
Rm = 1e3; % 忆阻器电阻初值
% 建立电路模型
sim('circuit_model_with_memristor');
% 绘制电容电压、电感电流和忆阻器电阻的变化曲线
figure;
plot(Capacitor_voltage.time, Capacitor_voltage.signals.values);
xlabel('Time (s)');
ylabel('Capacitor voltage (V)');
title('Capacitor voltage vs time');
figure;
plot(Inductor_current.time, Inductor_current.signals.values);
xlabel('Time (s)');
ylabel('Inductor current (A)');
title('Inductor current vs time');
figure;
plot(Memristor_resistance.time, Memristor_resistance.signals.values);
xlabel('Time (s)');
ylabel('Memristor resistance (ohm)');
title('Memristor resistance vs time');
% 计算输出电压
Vout = Capacitor_voltage.signals.values - A*Inductor_current.signals.values*R;
% 绘制输出电压的波形
figure;
plot(Capacitor_voltage.time, Vout);
xlabel('Time (s)');
ylabel('Output voltage (V)');
title('Output voltage vs time');
```
在上述程序中,Simulink模型文件circuit_model_with_memristor.mdl需要自行创建,其中包括电源、电容、电感、有源元件、VCR元件和非线性函数模块等模块。通过仿真计算得到电容电压、电感电流和忆阻器电阻的变化曲线,然后计算输出电压的波形,最终绘制出输出电压随时间的变化曲线。
需要注意的是,该程序仅为示例程序,实际情况下需要根据具体的电路参数和需求进行修改。同时,需要根据忆阻器的具体特性来定义其与时间和电压的关系,以便更好地模拟电路的响应。
阅读全文