Matlab —— 电路仿真

0. 综述


Matlab对电路模拟仿真特别在原理性仿真中是很好用的。

本博文中涉及的所有电路图,可在https://download.csdn.net/download/weixin_43559366/37395285中免积分下载。

0.1 软件安装与常规使用

版本:Matlab R2018b
🔗:https://zhuanlan.zhihu.com/p/378349402

  • Simulink Model界面放大缩小:鼠标滚轮,按空格即可回到原始尺寸
  • 元器件参数修改:双击元器件即可
  • 快速复制元器件:对元器件使用鼠标右键拖动
  • 元器件的使用说明:右击元器件 - help
  • 采样步长配置参考:8kHz下,一般选择1e-6的最大采样步长
  • 示波器波形测量:
    在这里插入图片描述
  • 添加注释:空白处拖动,点击Creat Area
    在这里插入图片描述
  • 载波信号:使用重复序列实现
    在这里插入图片描述
    三角波设置方法例子如下

在这里插入图片描述
锯齿波设置方法例子如下
在这里插入图片描述

0.1.1 C/C++编译器安装

在matlab的命令行窗口中,随意输入指令行,当未安装编译器时,会提示安装,跳转到其提供的链接进行下载,也可以直接到MinGW官网下载。
在这里插入图片描述
进入到连接后,如下图查看Matlab建议的MinGW版本,这里是6.3版本。
在这里插入图片描述
到MinGW官网下载页面点击MingW-W64-builds
在这里插入图片描述
跳转到下载页面,选择File
在这里插入图片描述
拉到下面,没有6.3版本,那就下载6.4版本,然后根据电脑系统位数下载,比如64位系统下载第一个就可以
在这里插入图片描述

下载完成后解压,右击此电脑 - 属性 - 高级系统设置 - 环境变量
在这里插入图片描述
在这里插入图片描述
在用户变量中点击新建,分别填入内容如下,点确定:

  1. 变量名:MW_MINGW64_LOC
  2. 变量值:minGW64解压的地方(路径不要有中文)
    在这里插入图片描述
    双击系统变量中的 path,新建一个路径:D:\mingw64\bin(根据minGW64解压的路径而定)
    在这里插入图片描述
    完成上述配置后,重启matlab

在matlab 的命令行窗口中输入mex -setup,显示如下图信息,即表示编译器安装成功
在这里插入图片描述

0.2 Simulink Model

  • 新建Simulink Model:
    在这里插入图片描述

  • 器件库:如下图部件为Simulink的库,其中包含很多类型的库,关于电子电气的,一般只需要用到Simulink和Simscape中的Electrical中的器件即可,前者是弱电器件(信号模型),后者为强电器件(物理模型)。
    wu在这里插入图片描述
    在这里插入图片描述

0.2.1 子系统 —— 电路封装

在库中添加一个子系统
在这里插入图片描述
双击子系统进入编辑窗口,绘制电路,添加输入输出口和连接口
在这里插入图片描述
在这里插入图片描述

最终子系统电路如下图

在这里插入图片描述
返回到电路图后,发现子电路被封装起来,只留下引脚,电路变得简单明了很多

在这里插入图片描述


另外一种快速添加子系统的方法,选择需要添加到子系统的电路,点击右下角的三个点,选择创建子系统,即可快速创建主系统电路
在这里插入图片描述

0.2.1.1 子系统参数设置

右击封装好的子系统,选择Create Mask,
在这里插入图片描述
在Parameters & Dialog 页面中添加Edit,然后按需编辑即可
在这里插入图片描述
回到子系统电路中,双击元器件编辑参数,在参数中填入之前Edit栏内设置的变量,即可将其关联上
在这里插入图片描述

如果设置变量时出现报错,可以先对已设置的变量设置一个初始值(见下一步),再回来关联变量

此后,双击封装好的子系统电路,即可快速编辑子系统电路中的元器件参数
在这里插入图片描述

1. 建模实验 —— 半波整流器(详细)

习题如下,使用Matlab进行电路仿真,并得出相应的结果。
在这里插入图片描述
在这里插入图片描述


如上所述,新建一个Simulink Model窗口,在库中拖一个powergui到Simulink Model窗口中,拖一个交流电压源、二极管、负载电阻等。

  1. 添加powergui
    在这里插入图片描述

  2. 添加交流电压源
    在这里插入图片描述

  3. 添加二极管
    在这里插入图片描述

  4. 添加负载电阻
    在这里插入图片描述

  5. 连接元器件
    注意器件的端口若是方形的,那它只能与方形的端口链接。

  6. 修改元器件参数
    在这里插入图片描述
    在这里插入图片描述

  7. 添加测量仪表(电压表、电流表)
    在这里插入图片描述
    添加示波器
    在这里插入图片描述
    双击示波器,设置示波器的探头为2个
    在这里插入图片描述
    添加混合器
    在这里插入图片描述

  8. 连接电路
    在这里插入图片描述

  9. 设置仿真时间:50Hz下一个信号为0.02s,看5个波形就是0.1s
    在这里插入图片描述

  10. 运行查看波形
    在这里插入图片描述
    分开波形窗口,这里布局设置为上下布局
    在这里插入图片描述
    可见此时的波形是比较粗糙的,不像理想的正弦波,这是因为仿真器的步长过大(采样周期过大)导致的,点击菜单栏中的设置,将最大步长设置为0.001s(50Hz信号下一个周期为0.02s,设置采样步长为0.001s)
    在这里插入图片描述
    在这里插入图片描述

再次运行仿真,波形变得平滑
在这里插入图片描述
那么基本电路就搭建成功,下面按照题目来放入相应的元器件并配置好相应参数。

波形图的放大缩小,对波形图使用滚轮或如下图按钮即可
在这里插入图片描述

  1. 使用一个晶闸管代替电路中二极管
    在这里插入图片描述
    修改电压源电压有效值为120V
    在这里插入图片描述
    增加电感负载并设置成0.048H,电阻阻值改为20Ω.
    在这里插入图片描述
    添加万用表并将之前的电压表、电流表删除
    在这里插入图片描述
    将电压源中的测量设置为电压测量,同理将电阻中的测量改为电压、电流测量,电感中的测量改为电压测量。
    在这里插入图片描述在这里插入图片描述
    重命名元器件
    在这里插入图片描述
    双击万用表,将所有测量点添加到右边
    在这里插入图片描述

添加一个4路信号分解器,并与万用表连接
在这里插入图片描述
添加一个3路信号混合器,最后连接结果如下图
在这里插入图片描述
添加脉冲发生器,给晶闸管触发信号
在这里插入图片描述
设置好信号周期和题目要求的延迟角。
在这里插入图片描述
再增加一个示波器去查看信号发生器的波形,最终电路如下图
在这里插入图片描述
12. 点击运行,查看两个示波器波形,其中示波器2中黄色为电源电压,蓝色为电阻电压,红色为电感电压,可见,由于电感的存在,负载的电压存在一个滞后状态,导致电源电压到零后,负载电压还未到零。
在这里插入图片描述

  1. 添加平均值、有效值的测量,再添加一个显示窗口
    在这里插入图片描述
    在这里插入图片描述
    最终电路连接如下图
    在这里插入图片描述
  2. 导出仿真数据:右击要导出的仿真数据,选择"log selected signal"
    在这里插入图片描述
    点击运行,再Matlab界面的工作区中,就保存了该信号的log文件,双击打开,有一个"value"文件,选中并选择上方菜单栏的绘图,选择plot,即可绘制该数据的图形
    在这里插入图片描述
    在这里插入图片描述

若要修改图形的一些参数,点击菜单栏中的鼠标,然后双击图形空白处即可
在这里插入图片描述
将图形修改成以下更加直观的图形之后,点击编辑 - 复制图窗,即可将图形复制
在这里插入图片描述

在这里插入图片描述

2. 建模实验 —— 单相全波整流电路(子系统封装)

如上所述,新建一个Simulink Model窗口,在库中拖一个powergui到Simulink Model窗口中,使用子系统搭建全桥电路

在这里插入图片描述

使用子系统搭建脉冲发生器,该脉冲发生器是用于给晶闸管导通的,其配置的参数如下,其中变量freq、alpha未子系统Mask参数(见0.2.1.1节)
在这里插入图片描述
在这里插入图片描述
添加负载电阻和电感,参数配置如下
在这里插入图片描述

最终外部电路如下

在这里插入图片描述

运行后波形图如下
在这里插入图片描述

3. 建模实验 —— 相控/斩控交交调压电路(FFT分析)

相控交交调压电路、斩控交交调压电路如下,现用Matlab进行电路仿真。

  • 相控交交调压电路:当交流电源为正相时,晶闸管S1导通,反之S2导通
  • 斩控交交调压电路:当交流电源为正相时,晶闸管S1导通,反之S2导通,其中S3、S4是感性负载的续流作用

在这里插入图片描述


相控交交调压电路如下:
在这里插入图片描述

参数如下:
在这里插入图片描述
在这里插入图片描述

以功率6000W来计算,负载电阻约为8.067ohm .

在这里插入图片描述

在这里插入图片描述

仿真时间为0.06秒即可
在这里插入图片描述

最大采样步长设置为0.0001秒
在这里插入图片描述

点击运行仿真,查看示波器波形:

可见负载电压相对电源电压正负半周期都是延迟了30°相位角才触发,其电压平均值于电源电压平均值一样,但RMS(有效值)比电源的RMS小很多,而且延迟角越大,RMS越小,从而实现降压功能
在这里插入图片描述


斩控交交调压电路如下
在这里插入图片描述

电源与负载参数与相控交交调压电路一样,如下
在这里插入图片描述
在这里插入图片描述


其中主电路子系统电路如下
在这里插入图片描述

其中Motset 的m脚接的是终端,作用只是防止编译警告

在这里插入图片描述


触发电路子系统电路如下

在这里插入图片描述

添加选择开关,其作用是当控制端口(输入2端口,即中间那个端口)满足所选标准时,信号通过输入1;否则,通过输入3。控制端口2的标准为u2>=阈值、u2>阈值或u2~=0可选。这里控制端口2的信号为交流电压源信号,即当电源电压为正时,信号通过输入1端口,反之通过输入2端口。
在这里插入图片描述
添加信号转换器,输出类型选择布尔型
在这里插入图片描述
在这里插入图片描述

添加逻辑信号操作器,配置为反相器
在这里插入图片描述
在这里插入图片描述

添加常数,常数设置为0,输出类型为布尔型
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
添加脉冲发生器,参数如下
在这里插入图片描述


点击运行,查看示波器波形
在这里插入图片描述
将信号放大后可见,输出信号并不平滑,此时分析它的总谐波畸变率(THD)(输出信号所有的谐波之和加基波之和占信号的百分比)

在这里插入图片描述

3.1 FFT分析

右击要分析的数据,选择"log selected signal",再次点击运行,生成数据
在这里插入图片描述
双击Power gui,选择FFT分析(傅里叶分析)
在这里插入图片描述
配置好FFT 分析参数,点击Display,即可显示FFT分析波形,从左到右依次为基波、三次谐波、五次谐波、七次谐波 … ,同时可见输出信号的THD为14.62%,总谐波失真非常大
在这里插入图片描述

同理查看斩控交交调压电路的THD,注意将最大频率改为40kHz,可见其THD达到99.88%
在这里插入图片描述

3.2 LC滤波电路

在这里插入图片描述
L1计算:
已知电路功率为6000W,电压值为220V,则计算得输出电流约为27.273A
已知电感的感抗为ωL,电感上的电压为0.05V=ωL * I,已知V=220V、I=27.273A、ω=314,则计算得出L约为0.00128H

C1计算:
电容值通过LC滤波电路的谐振频率公式来计算,谐振频率取5kHz,计算得C约为0.8μF

在这里插入图片描述


天机RMS和Display部件查看其负载电压的有效值,再次点击电路运行,查看波形图
在这里插入图片描述

在这里插入图片描述

3.3 实际分析

回到最初的斩控交交调压电路,理想情况下Mosfet S1和S4互补导通(S2、S3同理),前面的电路触发也是如此设置,但实际电路中可能因为某些原因,存在Mosfet S1、S4都不导通的情况,若此时负载L中存在大电压,此电压得不到及时的泄放,会对负载形成较大的威胁。
在这里插入图片描述

回到触发电路子系统电路,将S4、S3配置为常触发状态,修改如下
在这里插入图片描述
再次运行并查看示波器,仿真下,结果与前面的分析并无差异。

再次查看FFT分析,发现THD降低到3.47%,满足电网THD<5%的要求。
在这里插入图片描述

使用一个示波器查看两个电路的负载电压,可见斩控交交调压电路比相控交交调压电路效果更佳。
在这里插入图片描述
在这里插入图片描述

4. 建模实验 —— buck变换器

主电路原理图如下,简述原理为:

  1. 当Mos管S打开时,电源电压通过电感给电容和负载供电
  2. 当Mos管S关闭时,电感上储蓄的能量通过二极管协防,继续给电容和负载供电
    在这里插入图片描述
    搭建电路与参数如下
    在这里插入图片描述在这里插入图片描述
    在这里插入图片描述

注:

  1. 万用表观察的是负载R1的电压
  2. 采集时间为0.02s

点击仿真,查看示波器
在这里插入图片描述可见负载上的电压并不是完全是20V,这是因为Mos管、二极管的导通压降和R、L、C的寄生参数引起的。

4.1 添加调制波与载波

添加调制波和载波信号,其中调制波使用参数1实现,载波使用20kHz的锯齿波信号实现,调制波就是目标波形的占空比,因为占空比是40%,所以这里常数值设置为0.4
在这里插入图片描述
在这里插入图片描述

添加加法器并修改参数
在这里插入图片描述
在这里插入图片描述

添加零比较器并修改为大于0时输出为真(1)
在这里插入图片描述
在这里插入图片描述


最后电路搭建如下
在这里插入图片描述
点击仿真,查看示波器,波形如下,与第一个电路的结果差不多
在这里插入图片描述

5. 建模实验 —— 单端反激变换器

电路原理、参数与运行原理如下。
在这里插入图片描述

在这里插入图片描述


搭建电路如下:
在这里插入图片描述

其中线性变压器:
在这里插入图片描述
其参数解释如下:

  1. 单位,pu为标幺值单位,SI为标准值单位
  2. 运行功率与频率
  3. 原边电压(重要)、电阻、漏电感值
  4. 副边电压(重要)、电阻、漏电感值
  5. 励磁电阻、励磁电感(重要)

电感原边、副边的匝数比,一般通过原边电压和副边电压体现,如下原边电压为24、副边电压为8,那么该变压器的匝数比就是24/8=3:1

在这里插入图片描述

DC-DC PWM脉冲发生器,开关频率设置为40kHz,占空比为38.5%
在这里插入图片描述
在这里插入图片描述


仿真时间设置为0.02s,点击仿真,查看示波器,可见负载电阻电压稳定后处于4V左右

在这里插入图片描述

将PWM发生器的占空比设置为50%后,再次仿真查看示波器,可见输出电压大概在7V左右
在这里插入图片描述

其原因在于:电路处于开环状态,二极管、Mosfet、变压器中的电阻等会导致压降存在

5.1 离散仿真

右击空白处,选择Sample Time Display(采样时间显示),选All,即显示所有采样时间

在这里插入图片描述
然后弹出一个框,其中:

  1. 连续量
  2. 固定最小步长量
  3. 离散量
  4. 常量
  5. 混合量

对应地,在电路中有对应颜色的标识,如参数0.43为常量,那么它就显示为常量的颜色

在这里插入图片描述

点击设置按钮
在这里插入图片描述
选择固定步长和无连续状态,固定步长设置为0.25e-6
在这里插入图片描述

双击Power GUI,同样设置为离散仿真
在这里插入图片描述


添加一个子系统,其电路如下
在这里插入图片描述

其中,添加离散型PID控制器,设置为PI控制器,设置好PI参数,固定饱和(相当于限幅)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

返回到主电路并连接
在这里插入图片描述

运行仿真,查看示波器,可见,电压最后能稳定到5V左右。
在这里插入图片描述

最后,添加一个零阶保持器和滞后器到子系统电路
在这里插入图片描述
在这里插入图片描述

6. 建模实验 —— 隔离正激变换器

电路原理图与参数如下:
在这里插入图片描述
在这里插入图片描述


电路工作过程如下:

  1. 当Mos管S导通时:电源通过变压器N1到N2传递能量,同时给电感Lm充电。副边给电感L充电,给负载C、R供电。
    在这里插入图片描述
  2. 当Mos管S关断时:电感Lm释放能量,通过绕组N1续流,电流从N1非同名端流出,若传递到N2,电流也应该从非同名端流出,但副边N2无电流回路,则N1的能量只能传递到N3,电流从N3非同名端流出,回馈到电源端。
    在这里插入图片描述

Matlab中电路搭建与参数设置如下:
在这里插入图片描述
使用离散仿真模式
在这里插入图片描述
在这里插入图片描述

脉冲发生器
在这里插入图片描述
变压器
在这里插入图片描述
示波器查看负载电阻电压和绕组N3的电流
在这里插入图片描述
仿真时间设置为0.02秒,运行仿真,查看示波器波形图
在这里插入图片描述

7. 建模实验 —— DC/DC Cuk变换电路


DC/DC Cuk变换电路优点是输出电压纹波小,但缺点是要有足够大的电容;

实验参数:

  • 输入12-24V
  • 输出10-30V
  • 负载电阻10Ω

原理图概览:
在这里插入图片描述

7.1 新建工程

  1. 新建一个新的Simulink Model;
  2. 新建一个新的实时脚本;

7.2 放置与连接元器件

在Simulink Model 中依次放入以下元器件(在页面内,直接输入目标元器件即可快速选择放置):

  1. DC 电压源DC Voltage Source
    在这里插入图片描述
    在这里插入图片描述

  2. 电阻电容电感Series RLC Branch,依次为L1、L2、C1、C2、Rl,双击元件,将他配置成目标元件
    在这里插入图片描述
    在这里插入图片描述

  3. 晶体管Mosfet
    在这里插入图片描述

  4. 二极管diode
    在这里插入图片描述

  5. 电压测量仪Voltage Measurement
    在这里插入图片描述

  6. 电流测试仪
    在这里插入图片描述

  7. 电压电流显示仪display
    在这里插入图片描述

  8. 信号发生器pulse generator
    在这里插入图片描述

  9. 示波器Scope
    在这里插入图片描述

  10. powergui
    在这里插入图片描述

放置完成后,根据上述原理图摆放连接;

  1. [理论]将二极管正向压降值从0.8V改为0,实际制造电路中,二极管的正向压降是不可避免的,它会导致输出电压偏低0.8V,解决方法是适当提高MOSFET 的栅极控制PWM 的占空比以作补偿
    在这里插入图片描述
  2. [理论]将MOSFET 的导通电阻值从0.1ohm 改为0.00001ohm
    在这里插入图片描述

7.3 编写实时脚本代码

  1. 在实时脚本中输入代码

在这里插入图片描述

  1. 运行代码,得到仿真结果值,把结果值复制粘贴到电路对应元器件参数中
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

7.4 运行仿真

  1. Simulink 中点击运行,查看运行结果
    ,

  2. 双击示波器,点击设置,设置输入通道数为3,采样时间为0
    在这里插入图片描述
    在这里插入图片描述

  3. View - Layout,修改示波器输入源的摆放,查看示波器结果,界面从上到下依次为输入信号1、2、3
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  4. 根据偏好,设置示波器显示的样式
    在这里插入图片描述

7.5 资料备份

百度网盘 - 知识资源 - 电子工程 - Matlab 工程 - cukMatlabFile.rar
在这里插入图片描述

  • 52
    点赞
  • 321
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Truffle7电子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值