Matlab实现 线性动态电路可视化分析

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

编程思路

这个编程总体采用面向过程的编程思想,将人在处理线性动态电路问题时的一般思路用计算机仿真。本人采用matlab软件实现这一过程,具体思路如下:

  1. 利用合理的gui界面帮助用户选择适合的电路类型,之后将电路各元器件信息逐一输入计算机;
  2. 对于一阶动态电路,响应电压或电流的表达式基本是固定的,运用matlab软件以及输入的参数建立响应电压或电流的函数,并在gui
    界面输出图像,自变量取值范围为0-8T(T为时间常数);
  3. 对于二阶动态电路的全响应(电路结构固定的情况),根据KCL或KVL
    列出的二阶微分方程的形式是一样的,可以利用matlab中的相应函
    数求解方程,并在相应的范围内输出函数图像。

实例演示

有如下电路:

打开程序后界面如下图所示:

之后根据电路选择“二阶动态电路全响应”,并依次输入每个元器件的信息,绘制图像:

在时间一栏输入时间值,即可计算相应的电流。

注意:本程序只能解决固定电路结构的动态电路分析,一阶电路为RC串联电路与RL并联电路,二阶电路为LC并联后与电阻串联的电路,对于别的电路大家可以自己尝试,这里不再赘余。

Matlab源代码

这里只摘出“显示图像”按钮的Callback函数,其他控件函数不显示

一阶RC电路零输入响应:

function pushbutton2_Callback(hObject, eventdata, handles)
str1=get(handles.edit1,'string');
U=str2double(str1);
str2=get(handles.edit3,'string');
R=str2double(str2);
str3=get(handles.edit7,'string');
C=str2double(str3);
axes(handles.axes1);
t=R*C;   %t为时间常数
x=0:0.1:8*t;   %时间取值范围为0到8t
y=U*exp(-x/(R*C));   %   电容电压表达式
plot(x,y);   %画出图像
xlabel('t/s');
ylabel('Uc/V');   %设置坐标
str4=num2str(t);
set(handles.edit9,'string',str4);   %输出时间常数

其他一阶电路与之类似,不再具体列出。
二阶动态电路全响应(电路结构与实例类似):

function pushbutton2_Callback(hObject, eventdata, handles)
str1=get(handles.edit1,'string');
Is=str2double(str1);
str2=get(handles.edit3,'string');
R=str2double(str2);
str3=get(handles.edit7,'string');
C=str2double(str3);
str4=get(handles.edit12,'string');
L=str2double(str4);
str5=get(handles.edit10,'string');
Uc=str2double(str5);
str6=get(handles.edit11,'string');
Il=str2double(str6);
axes(handles.axes1);
f=dsolve('R*L*C*D2y+L*(Dy)+y*R=Is','y(0)=Il','(Dy)(0)*L=Uc','x');  %用matlab自带的函数求解微分方程
g = subs(f);  %将变量具体值带入
fplot(g,[0,0.0900]);  %做出图像,时间取值为0到0.09
xlabel('t/s');
ylabel('Il/A');   %设置坐标轴

参考文献

  1. 电路(第五版)—邱关源,罗先觉 著 -ISBN 978-7-04-19671-9 高等教育出版社.

(第一次写博客,希望能帮到大家!)

Matlab实现 线性动态电路可视化分析相关推荐

  1. 用MATLAB app designer设计人机交互界面——二阶线性动态电路可视化分析的研究

    用MATLAB app designer设计人机交互界面--二阶线性动态电路可视化分析的研究 这是我第一次尝试写博客,我试着给出电路课上要求的电路实验编程.但是电路的类型有点儿多,所以我只以二阶动态电 ...

  2. 一阶电路暂态响应的结果分析。_线性动态电路可视化分析

    1. 实验内容与任务实验内容: 编程实现可分析动态电路暂态响应过程的程序 任务包含:1.实现一个良好交互界面的应用程序:2.输入一阶电容电路参数,分析零状态.零输入响应过程:3.输入一阶电感电路参数, ...

  3. matlab一阶电路瞬态响应,MATLAB在一阶动态电路特性分析的应用

    MATLAB在一阶动态电路特性分析的应用 MATLAB在一阶动态电路特性分析的应用 (董梦媛 12013241942 2013级通信一班) 摘要: MATLAB具有强大的图形处理功能.符号运算功能和数 ...

  4. matlab一阶动态电路分析,MATLAB在一阶动态电路特性分析的应用

    MATLAB 在一阶动态电路特性分析的应用 (董梦媛 12013241942 2013级通信一班) 摘要: MATLAB 具有强大的图形处理功能.符号运算功能和数值计算功能.其中系统的仿真工具箱是从底 ...

  5. 13. 线性动态电路的复频域分析

    1. 拉普拉斯变换 1.1 拉普拉斯变换概念 对(0,∞)(0,\infty)(0,∞)上的函数f(t)f(t)f(t),其拉氏变换和拉氏反变换为: 拉式正变换,知道f(t)f(t)f(t),求其F( ...

  6. matlab 实现高阶动态电路,基于Matlab高阶动态电路自动计算平台的设计与实现

    1引言高阶动态电路在时域内建立的是高阶微分方程,手工几乎无法求解.采用S域法,虽然利用积分变换,将时域的微分方程转化为S域的代数方程,但求解时需要对激励的原函数进行拉氏变换,利用运算电路求出响应的象函 ...

  7. 计算机鼠标由传感器来监视,欧姆定律应用(四)动态电路的分析.ppt

    欧姆定律应用(四)动态电路的分析 欧姆定律的应用 (四)动态电路的分析 一.滑动变阻器的滑片P的位置的变化引起电路中电学物理量的变化 1.串联电路中滑动变阻器的滑片P的位置的变化引起的变化 方法总结: ...

  8. 一阶电路暂态响应的结果分析。_线性动态电路的复频域分析

    1. 拉普拉斯变换的定义 2. 拉普拉斯变换的基本性质 3. 拉普拉斯反变换的部分分式展开 4. 运算电路 5. 应用拉普拉斯变换法分析线性电路 6. 网络函数的定义 7. 网络函数的极点和零点 8. ...

  9. 电路(第三章、线性直流电路一般分析方法)

    1.线性直流电路的一般分析方法 1). 支路电流法 2). 回路电流法 3). 节点电压法 1). 支路电流法 a. 2b法,对于一个具有n个节点,b条支路的电路独立方程个数 KCL:n-1 KVL: ...

最新文章

  1. mysql连接池为何不用nio_为什么要用数据库连接池?
  2. 50年前,Hello World发明者第一次提交的Go代码长这样……
  3. 调试Docker容器
  4. 2021-10-15 红黑树 概念和平衡操作理解以及与AVL对比分析 恋上数据结构笔记
  5. 怎样建设WEB Cache
  6. zookeeper启动占用8080端口
  7. MySQL-03:数据表操作基本命令笔记
  8. 创建python的虚拟环境(图文教程),并使用。
  9. C#LeetCode刷题之#257-二叉树的所有路径(Binary Tree Paths)
  10. 044、JVM实战总结:高级工程师的硬核技能:JVM的Young GC日志应该怎么看?
  11. 融合·生态·实践 中国卫生信息大会新华三再秀领航者实力
  12. 酒店管理系统c语言课程设计,基于C语言的酒店管理系统课程设计.doc
  13. apdu 移动sim_SIM卡APDU指令【转】
  14. TreeMap根据value排序遇到的问题及分析
  15. 安装release版本的apk
  16. python利用WMI等监控获取windows状态如CPU、内存、硬盘等信息
  17. 经典RPG游戏Crypto Sword Magic
  18. 联想M490 开机U盘启动 快捷键
  19. Audio2Face-语音驱动虚拟人表情
  20. 将文件转存到钉钉的钉盘中

热门文章

  1. html5 3d自动,html5 3D微信头像自动抽奖代码
  2. latex 论文致谢
  3. 制作Retropie系统树莓派掌机(三)
  4. MongoDB热备方案
  5. 11台计算机的英语,世界第一台计算机英文缩写名为
  6. vue项目首屏加载优化
  7. c# 调整图片分辨率
  8. OvR逻辑回归多分类算法
  9. 增强 Jupyter Notebook 的功能,这里有四个妙招
  10. nltk学习之统计词频和分词nltk.word_tokenize nltk.FreqDist