蔡氏电路仿真实验
模拟电路运行
采用MATLAB进行模拟。本电路为一常微分方程的初值问题。
取定参数
matlab代码实现
首次模拟的图像对比
参数调整后,模拟的图像对比
分析频谱
模拟非线性电路同步
非线性电路同步瞬态过程
取定参数
模拟实验中的电感电容都采用测量值,为了方便,取为定值。
非线性负阻的I-V特性取成奇对称,数值和测量值稍作对称性修正。
代码实现
这里使用Matlab中ode45,四阶龙格库塔法四阶龙格库塔法求解常微分方程初值问题。C和C++的代码
I-V函数 myfun.m
function fun=myfun(x)
if x<0
fun=-myfun(-x);
elseif x<1.664849891
fun=x*(-7.44316E-04)-5.065E-06;
elseif x<11.29059205
fun=x*(-4.003E-04)-5.778E-04;
else
fun=x*3.574E-03-4.545E-02;
end
微分方程组 myode.m
function dy=myode(t,y)
global gg;
dy = zeros(3,1);
G=1/gg;
C1=9.91E-9;
C2=98.2E-9;
L=23E-3;
dy=[(G*(y(2)-y(1))-myfun(y(1)))/C1;
(G*(y(1)-y(2))+y(3))/C2;
-y(2)/L];
end
调节1/G输出图像nonlinear.m
clear;
global gg;
for gg=1800:1:2200
fs=100000;
[T,Y]=ode45('myode',0:1/fs:0.2,[0;0;0]);
X=Y(10002:end,1);
plot(Y(10002:end,1),Y(10002:end,2));
grid on