基于matlab的电路仿真
- 格式:docx
- 大小:17.41 KB
- 文档页数:3
基于matlab的单相桥式可控整流电路环节仿真设计目的和意义目录1. 引言1.1 背景和意义1.2 结构概述1.3 目的2. 单相桥式可控整流电路的基本原理2.1 桥式整流电路概述2.2 可控整流电路原理介绍2.3 Matlab在电路仿真中的应用3. 环节仿真设计步骤与方法3.1 仿真设计的准备工作3.2 桥式可控整流电路参数设置与模型建立3.3 信号源设计与输入波形调整4. 结果分析与讨论4.1 输出电压与负载特性分析4.2 输入功率和效率计算及分析4.3 控制方式对输出特性的影响分析5. 结论与展望5.1 结论总结和发现归纳5.2 设计中存在问题及改进方向提议1. 引言1.1 背景和意义随着电力系统的快速发展,可控整流技术作为一种重要的电能转换技术在电气领域中得到广泛应用。
而单相桥式可控整流电路作为可控整流技术的典型代表之一,具有显著的优势和重要的应用价值。
单相桥式可控整流电路被广泛应用于直流电源、交直流变频器、焊接设备以及伺服驱动等领域。
其主要功能是将交流电转换为带有直流成分的输出电压,并通过调节触发角来实现对输出电压幅值和形状的精确控制。
这种控制方式可以根据需要灵活地调整输出信号,达到各种特定使用要求。
因此,对于单相桥式可控整流电路进行准确的仿真设计和性能分析,是深入理解其工作原理和提高其运行效率的重要手段。
1.2 结构概述单相桥式可控整流电路由四个晶闸管连接而成,组成一个反并联结构。
其中两个晶闸管连接在正半周机架上,另外两个晶闸管连接在负半周机架上。
通过适当地触发晶闸管的导通,可以实现对输出电压大小和形状的精确控制。
1.3 目的本文旨在利用Matlab软件对单相桥式可控整流电路进行环节仿真设计,并验证其性能。
具体目的包括以下几点: 1. 理解单相桥式可控整流电路的基本原理和工作方式; 2. 建立合适的仿真模型,模拟出整流电路的运行过程; 3. 通过仿真结果分析输出电压与负载特性、输入功率和效率等参数变化情况; 4. 分析不同控制方式对输出特性的影响,并提出改进方案。
基于matlab的单相桥式可控整流电路环节仿真设计目的和意义一、引言随着电力电子技术的发展,可控整流电路在众多领域得到了广泛应用。
单相桥式可控整流电路作为其中一种重要类型,其性能优劣直接影响到整个电力系统的运行效率。
为了更好地研究单相桥式可控整流电路的性能,本文采用MATLAB软件对其进行仿真设计。
MATLAB以其强大的计算能力和图形显示功能,在电路仿真领域取得了显著成果。
以下将详细介绍基于MATLAB的单相桥式可控整流电路环节仿真设计的目的和意义。
二、目的和意义1.提高对单相桥式可控整流电路的理解通过对单相桥式可控整流电路的仿真设计,可以更加直观地展现电路的工作原理和性能特点。
在理论分析的基础上,结合MATLAB的仿真结果,有助于加深对单相桥式可控整流电路的理解。
2.验证MATLAB在电路仿真设计中的有效性MATLAB作为一种广泛应用于科学计算和工程仿真的软件,其在电路仿真设计中的有效性已得到广泛认可。
本文通过单相桥式可控整流电路的仿真设计,进一步验证了MATLAB在电路仿真设计中的优越性。
3.为相关领域的研究提供参考本文针对单相桥式可控整流电路的仿真设计,不仅可为电力电子、电气工程等领域的教学和研究提供理论支持,同时也有助于相关领域工程师在实际工程应用中进行参考。
三、MATLAB仿真步骤1.搭建单相桥式可控整流电路模型在MATLAB中,利用Simulink工具箱搭建单相桥式可控整流电路模型。
包括交流电源、变压器、整流桥、负载以及控制器等部分。
2.设置仿真参数和控制器根据实际应用需求,设置交流电源电压、频率等参数。
同时,针对单相桥式可控整流电路的特点,选择合适的控制器,如PID控制器、模糊控制器等。
3.进行仿真实验并分析结果在搭建好的仿真模型中,设置相应的仿真时间,运行仿真实验。
通过观察仿真结果,分析单相桥式可控整流电路的性能,如输出电压、电流等。
四、结论1.仿真结果的合理性分析通过与理论分析相比较,验证了单相桥式可控整流电路仿真结果的合理性。
基于MATLAB的电路模型仿真应用实验指导书一、实验目的1、掌握采用M文件及SIMULINK对电路进行仿真的方法。
2、熟悉POWERSYSTEM BLOCKSET 模块集的调用、设置方法。
3.进一步熟悉M脚本文件编写的方法和技巧。
二、实验原理1、通过M文件实现电路仿真的一般仿真步骤为:(1)分析仿真对象——电路;(2)确定仿真思路——电路分析的方法;(3)建立仿真模型——方程;(4)根据模型编写出仿真程序;(5)运行后得到仿真结果。
2、采用SIMULINK仿真模型进行电路仿真可以根据电路图利用SIMULINK中已有的电子元件模型直接搭建仿真模块,仿真运行得到结果。
通过SIMULINK仿真模型实现仿真为仿真者带来不少便利,它免除了仿真者在使用M文件实现电路仿真时需要进行理论分析的繁重负担,能更快更直接地得到所需的最后仿真结果。
但当需要对仿真模型进行一定理论分析时,MATLAB的M 语言编程就有了更大用武之地。
它可以更令灵活地反映仿真者研究电路的思路,可更加灵活地将自身想法在仿真环境中加以验证,促进理论分析的发展。
因此,可根据自己的实际需要,进行相应的选择:采用SINMULIN模块搭建电路模型实现仿真非常直观高效,对迫切需要得到仿真结果的用户非常适用;当用户需要深刻理解及深入研究理论的用户来说,则选择编写M文件的方式进行仿真。
注意:本节实验的电路SINMULINK仿真原理,本节实验主要是应用提供的电路仿真元件搭建仿真模型,类似于传统仿真软件PSPICE 的电路仿真方法。
采用SIMULINK进行电路仿真时元器件模型主要位于仿真模型窗口中SimPowerSystems节点下。
其中本次实验可能用到的模块如下:●“DC Voltage Source” 模块:位于SimPowerSystems 节点下的“Electrical Sources”模块库中,代表一个理想的直流电压源;●“Series RLC Branch” 模块:位于SimPowerSystems 节点下的“Elements”模块库内,代表一条串联RLC 支路。
基于Matlab的电路实时仿真平台设计与实现基于Matlab的电路实时仿真平台设计与实现一、引言电路仿真是电子工程领域中重要的工具之一,在电子电路设计过程中起着至关重要的作用。
而基于Matlab的电路实时仿真平台则是利用Matlab软件对电路进行仿真实验的重要应用之一。
本文将介绍基于Matlab的电路实时仿真平台的设计与实现过程。
二、电路仿真平台的设计与实现1. 平台功能需求分析基于Matlab的电路实时仿真平台的设计与实现主要包含以下功能需求:(1)电路建模:能够支持电路元件的建模以及电路的连接和布线。
(2)仿真参数设置:能够设置仿真的时间范围、步长等参数。
(3)仿真结果分析:能够实时显示电路中各个元件的电压、电流、功率等参数,并提供结果分析的功能。
(4)实验控制:能够控制实验的开始、暂停、恢复、停止等操作。
(5)数据记录与导出:能够记录仿真实验过程中的数据,并支持数据导出为Excel或其他格式。
2. 平台设计与实现基于以上功能需求,我们设计了一套基于Matlab的电路实时仿真平台。
平台的实现主要分为以下几个模块:(1)电路建模模块:利用Matlab提供的图形用户界面工具,搭建了一个电路建模界面。
用户可以通过该界面选择电路元件,并将元件进行连线和布线,从而实现电路的建模。
在建模过程中,用户还可以设置元件的参数和初始条件。
(2)仿真参数设置模块:通过设定仿真的时间范围、步长等参数,用户可以对仿真实验进行灵活的配置,以满足不同的需求。
(3)仿真运行模块:在完成电路建模和参数设置后,用户可以点击“运行”按钮,开始进行仿真实验。
平台利用Matlab强大的计算能力,根据电路模型和仿真参数进行实时的仿真计算,并实时绘制出电路中各个元件的电压、电流曲线等。
用户可以通过切换窗口或界面,实时观察仿真结果。
(4)实验控制模块:平台提供了开始、暂停、恢复、停止等操作按钮,用户可以根据需要自由控制仿真实验的进行。
例如,在观察到关键数据点时,用户可以暂停仿真实验,通过对元件参数的调整,进一步优化电路设计。
1 绪论本设计利用MATLAB及Simulink仿真软件强大的图形处理功能,符号运算功能和数值计算功能,实现常见的组合逻辑电路如编码器、译码器、数据选择器等逻辑电路的设计及仿真。
本设计通过Simulink仿真软件使用常见的与、或、非等基本逻辑单元,延时信号、时钟信号等信号源和示波器完成以上各种逻辑电路的设计和仿真,同时通过MATLAB汇编语言实现以上各基本组合逻辑电路的逻辑表达式,并在给定输入信号的情况下完成并验证各基本组合逻辑电路的功能。
通过程序设计和波形输入输出仿真两种方法来共同完成各种基本的组合逻辑电路的设计。
2 设计内容及要求2.1设计的目的及主要任务2.1.1设计目的(1)在了解MATLAB语言的基础上进一步掌握和精通MATLAB;(2)利用MATLAB强大的程序设计和仿真分析功能完成常见的组合逻辑电路的设计及仿真。
2.1.2 设计任务及要求深入研究和掌握数字电路中组合电路的理论知识,并根据已知条件利用MATLAB的强大的图形处理功能,符号运算功能和数值计算功能,实现以下组合逻辑电路的设计和仿真:(1)以编码器和译码器为例仿真下列波形:编码器输入输出波形(8线3线);译码器输入输出波形(3线8线);数据选择器输入输出波形(四选一数据选择器);(2)以译码器的级联为例实现系统的封装并仿真下列波形:译码器的输入输出波形(4线16线);(3)以七段数码管为例子完成数码管的图形输出显示。
2.2设计思想本设计以Simulink仿真系统中的基本逻辑元件、时钟信号和示波器为核心进行编码器、译码器、数据选择器及七段数码管的输入输出波形的设计和仿真,并且通过3线8线译码器的元件封装和级联完成4线16线译码器输入输出波形的设计和仿真。
同时以MATLAB汇编语言和各种基本组合逻辑电路的逻辑表达式为基础实现逻辑电路的设计并验证其逻辑功能。
3 MATLAB简介MATLAB和Mathematica、Maple并称为三大数学软件。
基于matlab的三相交流调压电路仿真与研究一、引言随着电力电子技术和控制理论的不断发展,交流调压技术在许多领域得到了广泛应用。
三相交流调压电路由于其能够实现对三相交流电的独立调节,因此在电机控制、电力质量改善以及无功补偿等方面具有重要作用。
本文旨在通过Matlab仿真研究三相交流调压电路的工作原理和性能。
二、三相交流调压电路工作原理三相交流调压电路通常采用相位控制方式,通过调节开关的导通和关断时间来改变输出电压的大小。
在三相系统中,每一相都有一个独立的调压电路,通过对每一相的独立调节,可以实现三相输出电压的平衡控制。
三、Matlab仿真环境设置Matlab是一款强大的数学计算软件,可用于电力电子系统仿真。
在Matlab中,我们首先需要设置仿真参数,包括仿真时间、采样时间、仿真算法等。
然后,我们需要构建三相交流调压电路的数学模型,并转化为Simulink模型。
四、电路模型的建立与参数设置在Simulink中,我们需要根据三相交流调压电路的工作原理,建立相应的电路模型。
这个模型应该包括电源、开关、二极管、电感和电容等元件。
然后,我们需要为这些元件设置合适的参数,以模拟实际的电路行为。
五、仿真结果分析通过运行仿真,我们可以得到输出电压的波形。
通过对这些波形的分析,我们可以了解调压电路的性能。
例如,我们可以观察输出电压的幅值、相位和频率等参数的变化情况。
六、实验验证与结果对比为了验证仿真结果的准确性,我们需要进行实验验证。
在实验中,我们需要搭建实际的三相交流调压电路,并使用示波器等设备记录输出电压的波形。
然后,我们将实验结果与仿真结果进行对比,以评估仿真的准确性。
七、结论通过以上分析和对比,我们可以得出结论:基于Matlab的三相交流调压电路仿真能够准确反映实际电路的工作情况。
这为进一步研究三相交流调压电路的性能提供了有力支持。
同时,通过仿真和实验的结合,我们可以更好地理解电路的工作原理,优化电路设计,提高系统的稳定性和可靠性。
目录前言 (2)1.主电路设计 (4)1.1.设计目的及任务 (4)1.2.设计内容及要求 (4)1.3.设计结果 (4)1.4.设计原理 (4)1.5.建模仿真 (8)2开环仿真 (11)2.1.电阻性负载仿真波形 (11)2.1.1.波形分析 (12)2.2.阻感性负载 (13)2.2.1.波形分析 (13)2.3.阻感性负载 (14)2.3.1.波形分析 (14)3.闭环控制的仿真 (14)3.1闭环控制的实现步骤 (14)3.2闭环控制下的仿真电路图 (15)3.2.1输出波形 (15)3.3谐波分析 (18)4.设计体会 (20)参考文献 (21)摘要本次课程设计主要是研究单相交流调压电路的设计。
由于交流调压电路的工作情况与负载的性质有很大的关系,交流调压电路可以带电阻性负载,也可以带电感性负载等。
交流调压电路是采用相位控制方式的交流电力控制电路,通常是将两个晶闸管反并联后串联在每相交流电源与负载之间。
在电源的每半个周期内触发一次晶闸管,使之导通。
与相控整流电路一样,通过控制晶闸管开通时所对应的相位,可以方便的调节交流输出电压的有效值,从而达到交流调压的目的。
其晶闸管可以利用电源自然换相,无需强迫关掉电路,并可实现电压的平滑调节,系统响应速度较快,但它也存在深控时功率因数较低,易产生高次谐波等缺点。
以对单相交流调压电路的MATLAB闭环控制的仿真为例,介绍了基于MATLAB 的Simulink仿真中建立仿真模型的方法,以及如何利用仿真模型进行实际调压电路波形分析。
通过对比电路仿真结果和理论计算结果,二者完全吻合,论证了MATLAB中的Simulink仿真工具可以很方便地创建和维护一个完整的模型,评估不同算法和结构并验证系统性能。
关键词:交流;调压;晶闸管;闭环控制;仿真引言MATLAB是集数值计算、符号运算及图形处理等强大功能于一体的科学计算工具,作为强大的科学计算平台,它几乎可以满足所有的计算要求。
基于MATLAB的组合逻辑电路设计和仿真摘要MATLAB是一款功能强大的数学软件,在很多的领域都得到了广泛的应用。
本文在介绍了组合逻辑电路原理的基础上,结合了MATLAB中的SIMULINK进行仿真。
由于组合逻辑电路的输出信号只取决于当时的输入信号,本文用SINULINK的各个逻辑模块完成了电路图的搭建,并通过输入信号,观察输出信号时否符合该逻辑功能,进一步验证电路的正确性。
仿真结果表明,利用Matlab进行组合电路的设计、调试,结果直观、省时省力。
它不仅能用来仿真本论文中提到的电路,而且能广泛地应用于其它逻辑电路的仿真,是逻辑电路设计、调试的有效工具。
关键字:MATLAB;SIMULINK;逻辑电路1、概述1.1 关于MA TLAB和SIMULINKMA TLAB是由Math Work公司开发的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括Matlab和Simulink两大部分。
MA TLAB可以完成复杂的数学运算,精度较高,能完成高等数学中所有的计算,包括导数、极限、定积分、不定积分、微分方程,甚至人工不可能完成的运算,MA TLAB也可以完成。
当然MA TLAB最初是用在矩阵的运算。
MA TLAB对数据有很友好的可视性,最主要的表现在于它的作图功能,能够在某段区间的任何函数,而且能够做出三维空间函数。
并且能够对数据进行拟合、差值。
所以,MA TLAB经常被用在数据理论分析中。
SIMULINK是MA TLAB中的组成部分,完成交互式仿真。
SIMULINK使用较为简单,能够完成概念模型的搭建,并通过仿真来验证模型的正确性。
SIMULINK应用十分广泛,如电力电子、DSP、运动控制、自动控制原理、电机拖动等课程中。
通过SIMULINK中的REAL-TIME Workshop可以生成在实物板上可以直接运行的代码,大大简化了设计工程师的工作量,弊端是生成的代码效率比较低,这点对于半导体技术的飞速发展已经不是难题了。
直流微电网的建模和仿真目录1 引言 (3)1.1 目的 (3)1.2 文档格式 (3)1.3 术语 (3)1.4 参考文献 (3)2 系统概述 (4)3直流微网的能量管理方法 (4)4系统建模 (5)4.1PV电池 (5)4.2 PV电池DCDC变换器建模 (8)4.3蓄电池双向DCDC1变换器建模 (9)4.4逆变器建模 (11)4.5负载建模 (12)4.6蓄电池建模 (13)5仿真验证 (13)6结论 (18)1 引言1.1 目的该文档针对独立智能供电及生活保障系统的需求,给出了提供智能供电的直流微电网系统框架,并根据这一框架搭建理论模型和仿真模型。
验证这一直流微电网系统的功能可行性。
1.2 文档格式本文档按以下要求和约定进行书写:(1)页面的左边距为2.5cm,右边距为2.0cm,装订线靠左,行距为最小值20磅。
(2)标题最多分三级,分别为黑体小三、黑体四号、黑体小四,标题均加粗。
(3)正文字体为宋体小四号,无特殊情况下,字体颜色均采用黑色。
(4)出现序号的段落不采用自动编号功能而采用人工编号,各级别的序号依次为(1)、1)、a)等,特殊情况另作规定。
1.3 术语1.4 参考文献2 系统概述图1 直流微网的系统框图图1为直流微网的系统框图,仿真系统包括以下几个部分:1)PV组件的特性模型2)蓄电池的模型3)PV组件后的DCDC拓扑模型和控制模型4)蓄电池后双向DCDC1的拓扑模型和控制模型5)逆变器包括:单相逆变器和三相逆变器的拓扑模型和控制模型6)交流负载模型7)直流负载模型8)超级电容模型(暂缺)9)超级电容后双向DCDC2的拓扑模型和控制模型(暂缺)10)柴油机模型(暂缺)11)智能控制器2与光伏智能控制器的协调控制模型(暂缺)3直流微网的能量管理方法能量管理思想:管理微网中各分布电源的能量流动,使得微网工作最优状态。
以下为结合我们项目的一个能量管理原则,有了这个管理原则,就可以明确各个分布电源的控制方法。
课程设计任务书学生姓名:田鑫专业班级:电子科学与技术0703 班指导教师:钟毅工作单位:信息工程学院题目:基于MATLAB的时序逻辑电路设计与仿真初始条件:MATLAB 软件微机要求完成的主要任务:深入研究和掌握数字电路中时序逻辑电路的理论知识。
利用MATLAB强大的图形处理功能、符号运算功能和数值计算功能,实现时序逻辑电路的设计和仿真。
一、以寄存器为例仿真下列波形并行寄存器输出波形(以基本RS触发器构造);移位寄存器输出波形(用D触发器构造)二、以双向移位寄存器为例实现子系统的设计和封装并仿真下列波形4位双向移位寄存器并行输出波形;4位双向移位寄存器串行右移输出波形;4位双向移位寄存器串行左移输出波形三、以扭环计数器为例仿真下列波形扭环计数器的输出波形(以JK触发器实现)时间安排:学习MATLAB语言的概况第1天学习MATLAB语言的基本知识第2、3天学习MATLAB语言的应用环境,调试命令,绘图能力第4、5天课程设计第6-9天答辩第10天指导教师签名:年月日系主任(或责任教师)签名:年月日目录摘要 (3)A b s t r a c t (3)绪论 (1)1M A T L A B简介 (2)1.1M A T L A B程序设计 (2)1.2M A T L A B的特点 (2)1.3M A T L A B程序设计 (2)1.4M文件 (2)1.5S I M U L I N K仿真设计 (3)1.5.1创建和使用模型 (3)1.5.2选择和定制模块 (3)1.5.3建立和编辑模型 (4)1.5.4配置子系统 (4)1.5.5条件执行子系统 (4)2时序逻辑电路设计 (5)2.1锁存器和触发器 (5)2.1.1双稳态 (5)2.1.2锁存器 (5)2.1.3触发器 (5)2.2时序逻辑电路设计 (7)2.2.1移位寄存器 (7)2.2.2扭环计数器 (9)3基于M A T L A B的组合逻辑电路设计 (12)3.1以寄存器仿真波形 (12)3.1.1并寄存器的设计 (12)3.1.2移位寄存器的设计 (15)3.2以双向移位寄存器实现子系统的设计和封装仿真波形 (17)3.3以扭环计数器为例仿真下列波形 (24)4收获、体会与建议 (26)5致谢 (27)6参考文献 (28)摘要MATLAB是当今最优秀的科技应用软件之一,具有强大的科学计算与可视化功能、简单易用、开放式可扩展环境。
基于matlab的电路仿真杨泽辉51130215%基于matlab的电路仿真%关键词: RC电路仿真, matlab, GUI设计% 基于matlab的电路仿真%功能:产生根据输入波形与电路的选择产生输出波形close all;clear;clc; %清空figure('position',[189 89 714 485]); %创建图形窗口,坐标(189,89),宽714,高485;Na=['输入波形[请选择]|输入波形:正弦波|',...'输入波形:方形波|输入波形:脉冲波'];%波形选择名称数组;Ns={'sin','square','pulse'}; %波形选择名称数组;R=2; % default parameters: resistance 电阻值C=2; % default parameters: capacitance电容值f=10; % default parameters: frequency 波形频率TAU=R*C;tff=10; % length of timets=1/f; % sampling lengthsys1=tf([1],[1,1]); % systems for integral circuit %传递函数;sys2=tf([1,0],[1,1]); % systems for differential circuita1=axes('position',[0.1,0.6,0.3,0.3]); %创建坐标轴并获得句柄;po1=uicontrol(gcf,'style','popupmenu',... %在第一个界面的上方创建一个下拉菜单'unit','normalized','position',[0.15,0.9,0.2,0.08],... %位置'string',Na,'fontsize',12,'callback',[]); %弹出菜单上的字符为数组Na,字体大小为12,set(po1,'callback',['KK=get(po1,''Value'');if KK>1;',...'st=char(Ns(KK-1));[U,T]=gensig(st,R*C,tff,1/f);',...'axes(a1);plot(T,U);ylim([min(U)-0.5,max(U)+0.5]);',...'end;']);%pol触发事件:KK获取激发位置,st为当前触发位置的字符串,即所选择的波形类型;%[U,T],gensing,产生信号,类型为st的值,周期为R*C,持续时间为tff,%采样周期为1/f,U为所产生的信号,T为时间;%创建坐标轴al;以T为x轴,U为y轴画波形,y轴范围。
Ma=['电路类型[请选择]|电路类型:积分型|电路类型:微分型']; %窗口2电路类型的选择数组;a2=axes('position',[0.5,0.6,0.3,0.3]);box on; %创建坐标轴2;set(gca,'xtick',[]);set(gca,'ytick',[]); %去掉坐标轴的刻度po2=uicontrol(gcf,'style','popupmenu',... %在第二个窗口的位置创建一个下拉菜单,同1 'unit','normalized','position',[0.55,0.9,0.2,0.08],...'string',Ma,'fontsize',12,'callback',[]);set(po2,'callback',['KQ=get(po2,''Value'');axes(a2);',... %po2属性设置,KQ为选择的电路类型,'if KQ==1;cla;elseif KQ==2;',... %1则清除坐标轴,2画积分电路,3画微分电路'plot(0.14+0.8i+0.02*exp(i*[0:.02:8]),''k'');hold on;',...'plot(0.14+0.2i+0.02*exp(i*[0:.02:8]),''k'');',...'plot(0.84+0.2i+0.02*exp(i*[0:.02:8]),''k'');',...'plot(0.84+0.8i+0.02*exp(i*[0:.02:8]),''k'');',...'plot([0.16,0.82],[0.2,0.2],''k'');',...'plot([0.16,0.3],[0.8,0.8],''k'');',...'plot([3,4,4,3,3]/10,[76,76,84,84,76]/100,''k'');',...'plot([0.4,0.82],[0.8,0.8],''k'');',...'plot([0.6,0.6],[0.8,0.53],''k'');',...'plot([0.6,0.6],[0.2,0.48],''k'');',...'plot([0.55,0.65],[0.53,0.53],''k'');',...'plot([0.55,0.65],[0.48,0.48],''k'');',...'text(0.33,0.7,''R'');',...'text(0.63,0.42,''C'');',...'text(0.8,0.5,''U_o'');text(0.1,0.5,''U_i'');hold off;',...'set(gca,''xtick'',[]);set(gca,''ytick'',[]);',...'else;',...'plot(0.14+0.8i+0.02*exp(i*[0:.02:8]),''k'');hold on;',...'plot(0.14+0.2i+0.02*exp(i*[0:.02:8]),''k'');',...'plot(0.84+0.2i+0.02*exp(i*[0:.02:8]),''k'');',...'plot(0.84+0.8i+0.02*exp(i*[0:.02:8]),''k'');',...'plot([0.16,0.82],[0.2,0.2],''k'');',...'plot([0.16,0.33],[0.8,0.8],''k'');',...'plot([0.33,0.33],[0.74,0.86],''k'');',...'plot([0.36,0.36],[0.74,0.86],''k'');',...'plot([0.36,0.82],[0.8,0.8],''k'');',...'plot([0.6,0.6],[0.8,0.58],''k'');',...'plot([0.6,0.6],[0.2,0.42],''k'');',...'plot([58,62,62,58,58]/100,[42,42,58,58,42]/100,''k'');',...'text(0.33,0.68,''C'');',...'text(0.63,0.42,''R'');',...'text(0.8,0.5,''U_o'');text(0.1,0.5,''U_i'');hold off;',...'set(gca,''xtick'',[]);set(gca,''ytick'',[]);',...'end;axis([0,1,0,1]);']);a3=axes('position',[0.1,0.1,0.3,0.3]); %在第三个窗口创建一个坐标轴pu3=uicontrol(gcf,'style','push',... %第三个界面:在第三个坐标轴上方建'unit','normalized','position',[0.15,0.43,0.2,0.04],...%立按钮键“显示输出波形”'string','显示输出波形','fontsize',12,...'callback',['axes(a3);if KQ==2;lsim(sys1,U,T);',... %触发事件:若2界面选择积分,lism画'elseif KQ==3;lsim(sys2,U,T);else,cla;end;']); %出sys1传递函数对应的UI关系图像,3同2;uicontrol(gcf,'style','frame',... %在第四个窗口出创建一个黑框,作为界限'unit','normalized','position',[0.47,0.13,0.5,0.32],...'string','10','BackgroundColor',[0.8,0.8,0.8],...'fontsize',16,'fontname','times new roman');s1=uicontrol(gcf,'style','slider',... %在第四个窗口创建‘R’滑块'unit','normalized','position',[0.55,0.38,0.3,0.03],... %触发事件:'Value',0.5,'SliderStep',[0.01 0.01],... %将滑块的值乘2加1赋给R'callback',['R=1+get(s1,''Value'')*2;',... %并重新产生波形、计算U、T'[U,T]=gensig(st,R*C,tff,1/f);',... %将t1的值改为R的值'set(t1,''string'',num2str(R));']);uicontrol(gcf,'style','text',... %第‘R’滑块左侧创建‘R‘文本'unit','normalized','position',[0.5,0.37,0.05,0.05],...'string','R','BackgroundColor',[0.8,0.8,0.8],...'fontsize',16,'fontname','times new roman');t1=uicontrol(gcf,'style','text',... %在'R'滑块右侧创建'2'文本,可变'unit','normalized','position',[0.86,0.37,0.1,0.05],...'string','2','BackgroundColor',[0.8,0.8,0.8],...'fontsize',16,'fontname','times new roman');s2=uicontrol(gcf,'style','slider',... %创建‘C’滑块'unit','normalized','position',[0.55,0.28,0.3,0.03],... %触发事件:'Value',0.5,'SliderStep',[0.01 0.01],... %将滑块的值赋给'C','callback',['C=1+get(s2,''Value'')*2;',... %并重新产生波形,计算U.T,'[U,T]=gensig(st,R*C,tff,1/f);',... %将t2的值改为C的值'set(t2,''string'',num2str(C));']);uicontrol(gcf,'style','text',... %第‘C’滑块左侧创建’C'文本'unit','normalized','position',[0.5,0.27,0.05,0.05],...'string','C','BackgroundColor',[0.8,0.8,0.8],...'fontsize',16,'fontname','times new roman');t2=uicontrol(gcf,'style','text',... %在‘C’滑块右侧创建‘2’文本'unit','normalized','position',[0.86,0.27,0.1,0.05],...'string','2','BackgroundColor',[0.8,0.8,0.8],...'fontsize',16,'fontname','times new roman');set(gcf,'NumberTitle','off','MenuBar','none'); %图形不可更改,不显示菜单条set(gcf,'name','基于matlab的电路仿真'); %名称为‘基于matlab的电路仿真’uu=uimenu(gcf,'label','About'); %创建‘About’菜单uimenu(uu,'label','Author:Zjliu'); %在‘About’菜单创建‘Author:Zjliu’子菜单ku=uimenu(gcf,'label','Readme'); %创建‘Readme’菜单kw1=uimenu(gcf,'label','执行顺序:'); %创建‘执行顺序:’菜单kw2=uimenu(gcf,'label','设定参数-->确定波形-->选择电路类型-->输出波形');%创建'设定参数-->确定波形-->选择电路类型-->输出波形'菜单set(kw1,'ForegroundColor','r');set(kw2,'ForegroundColor','b');%设置ke1,kw2颜色uicontrol(gcf,'style','text',... %在第四个窗口上面创建文本‘请选择波形之前改变下面的参数’'unit','normalized','position',[0.5,0.47,0.46,0.05],...'string','请选择波形之前改变下面的参数',...'BackgroundColor',[0.8,0.8,0.8],...'fontsize',16,'fontname','times new roman');s3=uicontrol(gcf,'style','slider',... %创建‘f’滑块'unit','normalized','position',[0.55,0.18,0.3,0.03],...'Value',0.5,'SliderStep',[0.01 0.01],...'callback',['f=5+get(s3,''Value'')*10;',... %触发事件:将滑块的值赋给f '[U,T]=gensig(st,R*C,tff,1/f);',... %重新产生波形,计算U/T'set(t3,''string'',num2str(f));']); %将f的值赋给t3,改变其位置的显示值uicontrol(gcf,'style','text',... %第‘f’滑块'左侧创建f'文本'unit','normalized','position',[0.5,0.17,0.05,0.05],...'string','f','BackgroundColor',[0.8,0.8,0.8],...'fontsize',16,'fontname','times new roman');t3=uicontrol(gcf,'style','text',... %在‘f’滑块右侧创建‘10’文本'unit','normalized','position',[0.86,0.17,0.1,0.05],...'string','10','BackgroundColor',[0.8,0.8,0.8],...'fontsize',16,'fontname','times new roman');。