Matlab实现 线性动态电路可视化分析
Matlab实现 线性动态电路可视化分析
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
编程思路
这个编程总体采用面向过程的编程思想,将人在处理线性动态电路问题时的一般思路用计算机仿真。本人采用matlab软件实现这一过程,具体思路如下:
- 利用合理的gui界面帮助用户选择适合的电路类型,之后将电路各元器件信息逐一输入计算机;
- 对于一阶动态电路,响应电压或电流的表达式基本是固定的,运用matlab软件以及输入的参数建立响应电压或电流的函数,并在gui
界面输出图像,自变量取值范围为0-8T(T为时间常数); - 对于二阶动态电路的全响应(电路结构固定的情况),根据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'); %设置坐标轴
参考文献
- 电路(第五版)—邱关源,罗先觉 著 -ISBN 978-7-04-19671-9 高等教育出版社.
(第一次写博客,希望能帮到大家!)
Matlab实现 线性动态电路可视化分析相关推荐
- 用MATLAB app designer设计人机交互界面——二阶线性动态电路可视化分析的研究
用MATLAB app designer设计人机交互界面--二阶线性动态电路可视化分析的研究 这是我第一次尝试写博客,我试着给出电路课上要求的电路实验编程.但是电路的类型有点儿多,所以我只以二阶动态电 ...
- 一阶电路暂态响应的结果分析。_线性动态电路可视化分析
1. 实验内容与任务实验内容: 编程实现可分析动态电路暂态响应过程的程序 任务包含:1.实现一个良好交互界面的应用程序:2.输入一阶电容电路参数,分析零状态.零输入响应过程:3.输入一阶电感电路参数, ...
- matlab一阶电路瞬态响应,MATLAB在一阶动态电路特性分析的应用
MATLAB在一阶动态电路特性分析的应用 MATLAB在一阶动态电路特性分析的应用 (董梦媛 12013241942 2013级通信一班) 摘要: MATLAB具有强大的图形处理功能.符号运算功能和数 ...
- matlab一阶动态电路分析,MATLAB在一阶动态电路特性分析的应用
MATLAB 在一阶动态电路特性分析的应用 (董梦媛 12013241942 2013级通信一班) 摘要: MATLAB 具有强大的图形处理功能.符号运算功能和数值计算功能.其中系统的仿真工具箱是从底 ...
- 13. 线性动态电路的复频域分析
1. 拉普拉斯变换 1.1 拉普拉斯变换概念 对(0,∞)(0,\infty)(0,∞)上的函数f(t)f(t)f(t),其拉氏变换和拉氏反变换为: 拉式正变换,知道f(t)f(t)f(t),求其F( ...
- matlab 实现高阶动态电路,基于Matlab高阶动态电路自动计算平台的设计与实现
1引言高阶动态电路在时域内建立的是高阶微分方程,手工几乎无法求解.采用S域法,虽然利用积分变换,将时域的微分方程转化为S域的代数方程,但求解时需要对激励的原函数进行拉氏变换,利用运算电路求出响应的象函 ...
- 计算机鼠标由传感器来监视,欧姆定律应用(四)动态电路的分析.ppt
欧姆定律应用(四)动态电路的分析 欧姆定律的应用 (四)动态电路的分析 一.滑动变阻器的滑片P的位置的变化引起电路中电学物理量的变化 1.串联电路中滑动变阻器的滑片P的位置的变化引起的变化 方法总结: ...
- 一阶电路暂态响应的结果分析。_线性动态电路的复频域分析
1. 拉普拉斯变换的定义 2. 拉普拉斯变换的基本性质 3. 拉普拉斯反变换的部分分式展开 4. 运算电路 5. 应用拉普拉斯变换法分析线性电路 6. 网络函数的定义 7. 网络函数的极点和零点 8. ...
- 电路(第三章、线性直流电路一般分析方法)
1.线性直流电路的一般分析方法 1). 支路电流法 2). 回路电流法 3). 节点电压法 1). 支路电流法 a. 2b法,对于一个具有n个节点,b条支路的电路独立方程个数 KCL:n-1 KVL: ...
最新文章
- mysql连接池为何不用nio_为什么要用数据库连接池?
- 50年前,Hello World发明者第一次提交的Go代码长这样……
- 调试Docker容器
- 2021-10-15 红黑树 概念和平衡操作理解以及与AVL对比分析 恋上数据结构笔记
- 怎样建设WEB Cache
- zookeeper启动占用8080端口
- MySQL-03:数据表操作基本命令笔记
- 创建python的虚拟环境(图文教程),并使用。
- C#LeetCode刷题之#257-二叉树的所有路径(Binary Tree Paths)
- 044、JVM实战总结:高级工程师的硬核技能:JVM的Young GC日志应该怎么看?
- 融合·生态·实践 中国卫生信息大会新华三再秀领航者实力
- 酒店管理系统c语言课程设计,基于C语言的酒店管理系统课程设计.doc
- apdu 移动sim_SIM卡APDU指令【转】
- TreeMap根据value排序遇到的问题及分析
- 安装release版本的apk
- python利用WMI等监控获取windows状态如CPU、内存、硬盘等信息
- 经典RPG游戏Crypto Sword Magic
- 联想M490 开机U盘启动 快捷键
- Audio2Face-语音驱动虚拟人表情
- 将文件转存到钉钉的钉盘中