作者留言:本文还未撰写完成,目前主要是对观看过视频的读者,提供不完善的帮助。本文会持续的完善,请读者多多包涵!抱歉!
仿真应用视频:
二极管功能--防反向电压--matlab仿真_哔哩哔哩_bilibili
Matlab版本:2022 中文版
基本操作:
打开simulink:
1.直接在命令行输入simulink
2.最上方点击主页然后找找
旋转元器件:
1.选中元器件 ctrl+R
2.右键元器件 格式 旋转元器件
电压传感器使用并显示到示波器
将电压传感器并联受测电路中,将信号端口连接到物理信号转simulink信号中,再连接到示波器
电流传感器使用并显示到示波器
将电流传感器串联受测电路中,将信号端口连接到物理信号转simulink信号中,再连接到示波器
调整仿真时间:
上方工具栏仿真-----停止时间
固定上方的工具栏:
点工具栏右下角的图钉
信号线命名:
右击信号线----属性-----信号名称-----确定
示波器显示多个信号:
左击示波器-----上方工具栏选择示波器-----修改端口数量----接入信号--修改信号线名称----仿真运行
分析所有示波器的信号:
将示波器数据设置为记录数据到工作区
将数据导入到数据检查器
模型创建与编辑
创建新模型
快捷键:Ctrl + N
操作步骤:打开 MATLAB 后,在 MATLAB 主界面上点击 Simulink 图标,或者直接按 Ctrl + N
打开一个新的 Simulink 模型。
保存模型
快捷键:Ctrl + S
操作步骤:保存当前模型。保存文件时,Simulink 模型默认使用 .slx
文件格式。
运行仿真
快捷键:Ctrl + T
操作步骤:运行模型仿真,查看模型的仿真输出结果。运行仿真时,可以观察 Scope 等模块的输出波形。
放大和缩小模型
放大:Ctrl + +
缩小:Ctrl + -
操作步骤:用于调整当前工作区的缩放比例,适合查看模型的大结构或局部细节。
添加模块(元件)
方法 1:直接从 Simulink Library Browser 拖动模块到模型窗口。
方法 2:按下 快捷键 Ctrl + Space
,激活 快速搜索框。输入模块名称(例如 Gain、Scope 等),按 回车 选择并放入模型中。
信号线的连接与操作
连接信号线
快捷键:左键点击元件的输出端 -> 拖动到目标元件的输入端 -> 松开左键
操作步骤:单击一个模块的输出端(小三角形),按住鼠标左键拖动信号线。 将信号线拖到目标模块的输入端(小三角形),松开鼠标即可完成连接。
调整信号线的拐角
操作:拖动线条的任意节点可以调整信号线的路径,保持模型的整洁。
快捷键:按住 Shift
键并拖动线段,可以强制使信号线成直角拐角。
断开信号线
操作步骤:选中信号线,按 Delete 键删除。
快捷键:直接按 Delete
。
自动连接信号线
快捷键:Ctrl + I
操作步骤:选择多个模块,按 Ctrl + I
,Simulink 会自动生成连接信号线(适用于串联的多个模块)。
注释和标签
添加注释(Comment)
快捷键:Ctrl + R
操作步骤:在空白处 右键 选择 "Add Annotation"。或者使用 Ctrl + R
快捷键添加注释框,然后输入说明文字。注释可以自由拖动,也可以通过信号线连接到相关模块,便于解释电路或控制系统的逻辑。
添加信号标签(Signal Label)
操作步骤:单击信号线,点击信号线旁边的小 + 号按钮。输入标签名称,这样在复杂模型中可以方便地识别信号。
添加信号名称(Signal Name)
快捷键:Alt + 回车
操作步骤:单击信号线,按下 Alt + Enter
,输入信号的名称。信号名称会显示在信号线上方,方便模型理解和调试。
快捷操作
模块对齐
快捷键:Ctrl + A
然后按 Ctrl + Shift + ->/↓
操作步骤:按 Ctrl + A
选择所有模块或使用鼠标框选一部分模块。使用 Ctrl + Shift + 方向键
对齐模块,保持模型的整洁性。
复制模块
快捷键:Ctrl + C
(复制) 和 Ctrl + V
(粘贴)
操作步骤:选中目标模块,按 Ctrl + C
进行复制,随后按 Ctrl + V
将其粘贴到模型中。
撤销和重做
撤销:Ctrl + Z
重做:Ctrl + Y
操作步骤:在进行模型编辑时,可以通过 Ctrl + Z
撤销最近的操作,按 Ctrl + Y
恢复已撤销的操作。
模块参数设置
打开模块参数
快捷键:双击模块
或 Ctrl + E
操作步骤:双击一个模块可以打开它的参数设置窗口,在此窗口中可以调整增益、时间常数、初始条件等参数。
自动调整模块大小
快捷键:Ctrl + J
操作步骤:选中模块后按 Ctrl + J
,Simulink 将根据模块名称自动调整其显示大小,使模块名称完全可见。
仿真设置
调整仿真时间
快捷键:Ctrl + E
或 双击模型右上角的仿真时间框
操作步骤:按 Ctrl + E
打开 仿真参数设置(Model Configuration Parameters) 窗口。在 Solver 选项卡下,可以设置 仿真开始时间 和 仿真结束时间。
选择仿真模式
操作步骤:在 Simulink 界面右上角选择仿真模式:Normal(普通仿真)、Accelerator(加速仿真)或 Rapid Accelerator(快速加速仿真)。对于大型复杂模型,可以使用 加速仿真 来提高仿真速度。
调试与结果查看
使用 Scope 查看信号
操作步骤:将 Scope 模块连接到信号线上,仿真运行后双击 Scope,查看信号的时域波形。
快捷键:Ctrl + T
运行仿真,仿真结束后自动更新 Scope 显示。
将数据导出到工作区
To Workspace 模块:将 To Workspace 模块连接到需要观察的信号线上。设置输出变量名称和保存格式(如结构体、数组等),仿真结束后信号将被保存到 MATLAB 工作区中进行进一步分析。
数据记录与调试
信号记录:右键点击信号线,选择 "Log Selected Signals",启用信号记录功能。仿真结束后,信号会被保存到 MATLAB 工作区,便于后续分析。
模型分层与子系统
创建子系统
快捷键:Ctrl + G
操作步骤:选中一组模块,按 Ctrl + G
,Simulink 会将其自动打包为一个子系统,便于组织复杂模型。双击子系统可以进入其中查看和编辑其内部结构。
进入和退出子系统
进入子系统:双击子系统模块进入。
返回上一级:点击 Simulink 窗口左上角的 箭头 或按 Ctrl + ↑
返回上一层。
模型组织与管理
模型层次结构
子系统(Subsystems):通过创建子系统,将多个模块封装在一个子系统中,简化模型层次和视觉复杂性。
模型引用(Model Reference):如果模型非常复杂,可以将部分模型作为一个单独的引用模块,并在主模型中进行调用,便于模块复用。
模型讲解:
求解器:
电路想要仿真就必须接入求解器,每一个独立的电路都要接入求解器。求解器需接在参考地上面。求解器是用来配置电路仿真时的数学模型,用来确定我们怎么样进行数学仿真,比如精度到多少,仿真多少时间,从什么时候开始仿真,电路需不需要到达稳定状态时才开始仿真,或者电路从什么状态时开始仿真。
求解器导入:
1.在 Simulink 模型窗口中,打开库浏览器(点击菜单栏中的“Library Browser”)。
2.在库浏览器中,导航到 Simscape > Utilities > Solver Configuration
。
3.将 Solver Configuration
模块拖到你的模型中。
求解器使用时,需接到参考地上面,即把在电路中只有电源负极的话,我们接一个地到负极上面,在把求求解器接到上面。
示波器:
我们想要看到电路中的各节点的电压或电流,只能通过接入示波器去看,相当于我们接入示波器,等于告诉电脑我们要看这个节点的信号,仿真的时候需要把这个节点的信号实时记录下来。我们接入示波器,会增加电脑的计算量,吃电脑配置。
示波器导入:
Simulink > Sinks > Scope
示波器使用:
探测电流:
导入电流传感器,并串联到受测支路
Simscape > Foundation > Electrical > Electrical Sensors> Current Sensor
导入信号转换器,将电流传感器的物理信号转换为Simulink信号给到示波器
s
探测电压:
导入电压探测传感器,并联到受测支路中
Simscape > Foundation > Electrical > Electrical Sensors> Voltage Sensor
导入信号转换器,将电压传感器的物理信号转换为Simulink信号给到示波器
逻辑控制模块:
step模块:阶跃函数,瞬间发生一次变化
sine wave模块:正弦波函数
signal builder模块:信号构建器,允许用户构建复杂的波形,可以多种波形的组合
repeating sequence模块:重复序列,产生用户自定义的重复信号
Pulse Generator模块:脉冲发生器,产生方波或脉冲信号
ramp模块:斜坡,产生线性信号(一次方程),线性增长或衰减
random number模块: 随机数,产生随机信号,如噪音信号
from workspace模块:工作区信号,从matlab工作区中导入用户自定义时间序列数据
使用指导:我们需要在工作区创建一个这样格式的结构体
time:时间 values:值 dimensions:维度(前面两个数据是单一数列就1)
我们函数创建出来的x横数列往time塞,y竖数列往values塞,dimensions一般是1
clock模块: 时钟,时间信号,可用于追踪仿真时间
fun模块:函数,可以直接使用matlba的函数表达式生成信号,用户可自定义复杂函数
受控信号源:
可控电压源:输入电压可以根据输入信号进行变化
模型位置:Simscape > Foundation > Electrical > Electrical Source> Controlled Voltage Source
可控电流源:输入电流可以根据输入信号进行变化
模型位置:Simscape > Foundation > Electrical > Electrical Source> Controlled Current Source
信号转换器:
模型位置:
1. 被动元件(Resistors, Capacitors, Inductors)
这些被动元件广泛用于模拟电路中,通常用于分压、滤波、振荡和储能。
名称 | 描述 | 路径(在 Library Browser 中查找) |
---|---|---|
Resistor | 电阻,用于电压分压、限流等用途。 | Simscape > Foundation Library > Electrical > Electrical Elements |
Variable Resistor | 可变电阻,可以动态调整电阻值,用于可调电路设计。 | Simscape > Foundation Library > Electrical > Electrical Elements |
Capacitor | 电容器,用于存储电荷,广泛用于滤波、信号耦合、时间常数电路。 | Simscape > Foundation Library > Electrical > Electrical Elements |
Variable Capacitor | 可变电容器,允许动态调整电容值。 | Simscape > Foundation Library > Electrical > Electrical Elements |
Inductor | 电感器,用于存储磁场能量,广泛用于滤波器和电感储能电路。 | Simscape > Foundation Library > Electrical > Electrical Elements |
Variable Inductor | 可变电感器,可以动态调整电感值。 | Simscape > Foundation Library > Electrical > Electrical Elements |
2. 电源和参考元件(Power Sources and References)
电源和接地是电路中不可缺少的部分,提供电能并定义电压参考。
名称 | 描述 | 路径(在 Library Browser 中查找) |
---|---|---|
DC Voltage Source | 直流电压源,用于提供恒定的直流电压。 | Simscape > Foundation Library > Electrical > Electrical Sources |
AC Voltage Source | 交流电压源,用于提供交流电压,用于 AC 电路仿真。 | Simscape > Foundation Library > Electrical > Electrical Sources |
Controlled Voltage Source | 受控电压源,可以通过输入信号控制输出电压的大小。 | Simscape > Foundation Library > Electrical > Electrical Sources |
DC Current Source | 直流电流源,用于提供恒定的直流电流。 | Simscape > Foundation Library > Electrical > Electrical Sources |
AC Current Source | 交流电流源,用于提供交流电流。 | Simscape > Foundation Library > Electrical > Electrical Sources |
Controlled Current Source | 受控电流源,可以通过输入信号控制输出电流的大小。 | Simscape > Foundation Library > Electrical > Electrical Sources |
Electrical Reference | 电气参考点(地),为电路提供公共地。 | Simscape > Foundation Library > Electrical > Electrical Elements |
3. 二极管和半导体器件(Diodes and Semiconductor Components)
二极管和其他半导体器件是电子电路中重要的元件,用于整流、稳压、保护等用途。
名称 | 描述 | 路径(在 Library Browser 中查找) |
---|---|---|
Diode | 理想二极管,允许电流单向流动,常用于整流和保护电路。 | Simscape > Foundation Library > Electrical > Semiconductors |
Zener Diode | 稳压二极管,用于反向击穿时提供稳压保护。 | Simscape > Foundation Library > Electrical > Semiconductors |
LED (Light Emitting Diode) | 发光二极管,发光元件,用于显示和指示灯电路。 | Simscape > Foundation Library > Electrical > Semiconductors |
Schottky Diode | 肖特基二极管,具有较低的正向压降,适用于高速开关电路。 | Simscape > Foundation Library > Electrical > Semiconductors |
4. 晶体管和开关器件(Transistors and Switching Devices)
晶体管和开关用于放大和切换电路,它们是模拟和数字电路中的重要组成部分。
名称 | 描述 | 路径(在 Library Browser 中查找) |
---|---|---|
NPN Bipolar Transistor | NPN型双极晶体管,用于放大和开关电路。 | Simscape > Foundation Library > Electrical > Semiconductors |
PNP Bipolar Transistor | PNP型双极晶体管,用于放大和开关电路。 | Simscape > Foundation Library > Electrical > Semiconductors |
N-Channel MOSFET | N沟道MOSFET,用于开关和放大电路。 | Simscape > Foundation Library > Electrical > Semiconductors |
P-Channel MOSFET | P沟道MOSFET,用于开关和放大电路。 | Simscape > Foundation Library > Electrical > Semiconductors |
Ideal Switch | 理想开关,用于简单的开关操作,不包括实际的动态行为。 | Simscape > Foundation Library > Electrical > Electrical Elements |
Controlled Switch | 受控开关,用于通过外部控制信号开关电路。 | Simscape > Foundation Library > Electrical > Electrical Elements |
Thyristor | 可控硅,用于电力电子中的控制和整流。 | Simscape > Foundation Library > Electrical > Semiconductors |
Triac | 三端双向可控硅,适用于交流电路中的开关和控制。 | Simscape > Foundation Library > Electrical > Semiconductors |
N-Channel MOSFET | N沟道MOSFET,用于低端开关和放大电路。 | Simscape > Foundation Library > Electrical > Semiconductors |
P-Channel MOSFET | P沟道MOSFET,用于高端开关电路。 | Simscape > Foundation Library > Electrical > Semiconductors |
5. 传感器和测量元件(Sensors and Measurement Components)
这些元件用于测量电路中的电压、电流、功率等参数,帮助你监控仿真过程中的信号变化。
名称 | 描述 | 路径(在 Library Browser 中查找) |
---|---|---|
Voltage Sensor | 电压传感器,用于测量电路中的电压。 | Simscape > Foundation Library > Electrical > Sensors |
Current Sensor | 电流传感器,用于测量电路中的电流。 | Simscape > Foundation Library > Electrical > Sensors |
Power Sensor | 功率传感器,用于测量电路中的功率消耗。 | Simscape > Foundation Library > Electrical > Sensors |
Temperature Sensor | 温度传感器,用于测量电路中的温度变化。 | Simscape > Foundation Library > Electrical > Sensors |
6. 整流和调节元件(Rectifiers and Regulators)
这些元件用于电源和信号调节、转换和稳压,常见于电源设计和电力电子应用中。
名称 | 描述 | 路径(在 Library Browser 中查找) |
---|---|---|
Single-Phase Full Bridge Rectifier | 单相桥式整流电路,用于将交流电转为直流电。 | Simscape > Foundation Library > Electrical > Specialized Power Systems > Power Electronics |
Voltage Regulator | 电压调节器,用于稳定输出电压。 | Simscape > Foundation Library > Electrical > Electrical Elements |
Buck Converter | 降压转换器,开关电源中的常见拓扑,用于降压应用。 | Simscape > Foundation Library > Electrical > Specialized Power Systems > Power Electronics |
Boost Converter | 升压转换器,开关电源中的常见拓扑,用于升压应用。 | Simscape > Foundation Library > Electrical > Specialized Power Systems > Power Electronics |
7. 其他常用元件(Miscellaneous Components)
一些常用的特殊元件和功能模块,适用于多种电路的特殊功能需求。
名称 | 描述 | 路径(在 Library Browser 中查找) |
---|---|---|
Fuse | 保险丝,用于过流保护。 | Simscape > Foundation Library > Electrical > Electrical Elements |
Breaker | 断路器,用于电路保护和切换。 | Simscape > Foundation Library > Electrical > Specialized Power Systems > Fundamental Blocks |
Ground | 接地,用于电路中的公共参考点。 | Simscape > Foundation Library > Electrical > Electrical Elements |
Op-Amp | 运算放大器,用于放大模拟信号。 | Simscape > Foundation Library > Electrical > Electrical Elements |
Logic Gate (AND, OR, NOT) | 各种逻辑门电路,用于数字电路仿真。 | Simulink > Logic and Bit Operations |
8. 信号源和显示模块(Sources and Sinks)
这些模块用于生成信号输入和输出,用于观察仿真结果。
名称 | 描述 | 路径(在 Library Browser 中查找) |
---|---|---|
Constant | 常数信号源,用于生成一个固定的常数输入信号。 | Simulink > Sources |
Step | 阶跃信号源,用于生成阶跃函数信号。 | Simulink > Sources |
Sine Wave | 正弦波信号源,用于生成正弦波信号。 | Simulink > Sources |
Pulse Generator | 脉冲信号源,用于生成周期性脉冲信号。 | Simulink > Sources |
Ramp | 斜坡信号源,用于生成线性增加的信号。 | Simulink > Sources |
Random Number | 随机数发生器,用于生成随机信号。 | Simulink > Sources |
Scope | 示波器,用于显示仿真中信号的时域波形。 | Simulink > Sinks |
Display | 显示模块,用于显示信号的数值。 | Simulink > Sinks |
To Workspace | 输出到工作区,用于将信号导出到 MATLAB 工作区。 | Simulink > Sinks |
应用示例:
创建时变的信号源(如时变电压源)
当我们需要一个可以根据时间发生变化信号源,如时变电压源时。我们需要导入一个函数生成模块,通过信号转换器(simulink信号转物理信号),去控制我们的信号源。
时变电压源:
1.搭建电路:逻辑控制模块+受控电压源+电压传感器+示波器
2.工作区创建from workspace逻辑控制模块所需结构体
% 主脚本内容x =0:0.2:10; % 生成从 0到 10的 x 值,步长为 0.2y = arrayfun(@piecewise_function, x); % 对每个 x 值应用分段函数% 绘制函数图像figure;plot(x, y, '-o');title('分段函数');xlabel('x');ylabel('f(x)');grid on;% 局部函数定义% 创建用于 "From Workspace" 模块的结构体y = y'sim_data.time = x;sim_data.signals.values = y;sim_data.signals.dimensions = 1;function y = piecewise_function(x) % 分段函数的逻辑判断 if x >= 3 && x<=5 %x在3到5的范围内 %是,y=-20 y = -20; else % 否则,y = 20 y = 20; endend
3.双击控制逻辑模块导入工作区的结构体
4运行仿真:
从示波器可以看出电压在3到5秒的时间端内为-20V,其余时间段内为20V。
模型导入
参考地:
Simscape > Foundation > Electrical > Electrical Elements
matlab基础操作:
列向量与横向量互转:
y=y'
创建分段函数:
实时脚本1:
% 主脚本内容x =0:0.2:10; % 生成从 0到 10的 x 值,步长为 0.2y = arrayfun(@piecewise_function, x); % 对每个 x 值应用分段函数% 绘制函数图像figure;plot(x, y, '-o');title('分段函数');xlabel('x');ylabel('f(x)');grid on;% 局部函数定义function y = piecewise_function(x) % 分段函数的逻辑判断 if x >= 3 && x<=5 %x在3到5的范围内 %是,y=-20 y = -20; else % 否则,y = 20 y = 20; endend