百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

MATLAB的Simulink常用模块(一)(simulink的matlab function模块)

cac55 2025-06-10 13:22 5 浏览 0 评论

在MATLAB的Simulink中有些常用的模块,今天主要介绍常数模块、示波器模块、以及模块属性的操作函数。


1.模块的构成元素

输入/输出端口:作为模块之间传递数据的纽带,连接输入信号和输出信号。
模块外观:通常为矩形或圆形,上面带有说明文字或图像并显示有输出
/输出端口名。
模块对话框:双击模块外观后弹出的参数GUI,可以在参数控件上进行参数设置。

2.Matlab/Simulink快捷键

2.1 模型调整

Alt + Enter:为选定模块设置主要参数
Ctrl + Shift + I:打开或隐藏 Property Inspector
Shift + 拖动句柄:调整模块大小,保持相同的高宽比
Ctrl + 拖动句柄:从中心调整模块大小
Ctrl + R:顺时针旋转模块 顺时针旋转90°
Ctrl + Shift + R:逆时针旋转模块
Ctrl + I:翻转模块
Ctrl + F:查找模块
Ctrl + M:封装模块
Ctrl + U:在模块封装下查找
Ctrl + Shift + Y:注释模块
Ctrl + Shift + X:注释掉或取消注释模块
Ctrl + K:刷新Mode模块
Ctrl + L:对于链接模块,转到父模块的库
Ctrl + H:打开 Model Explorer

2.2 仿真键盘快捷键

Ctrl + E:打开 Configuration Parameters对话框
Ctrl + D:更新图
Ctrl + T:开始仿真
Ctrl + Shift + T:停止仿真
Ctrl + B:构建模型(用于代码生成)

2.3 调试和断点键盘快捷方式

F10:步骤
F11:步入
Shift + F11:步出
F5:运行
F12:设置/清除断点
Ctrl + J:查看simple time
视图放大:r
视图缩小:v

3.模块的常用属性和参数

clc;
clear all;
close all;
% 获取模块的属性
% gcb:获取当前被选中的模块
% gcbh:获取当前被选中的模块的句柄
% get(handle):获取模块的属性信息
% inspect(handle):通过属性观察器方式罗列模块的属性信息
% get_param(block,prop_string):获取block模块的prop_string属性值
% set_param(block,prop_string,prop_value):将block模块的prop_string属性的值设为
% prop_value。prop_string,prop_value可以多对出现
open_system('test1')
information = gcb
get(gcbh)
set_param(gcbh,'BackgroundColor','c')
set_param(gcbh,'ForegroundColor','blue')
%set_param/get_param的第二个参数使用的不是提示标签,而是参数的变量名。


information =


    'test1/Scope'


                                        Path: 'test1'
                                        Name: 'Scope'
                                         Tag: ''
                                 Description: ''
                                        Type: 'block'
                                      Parent: 'test1'
                                      Handle: 4.0430e+03
                             HiliteAncestors: 'none'
                             RequirementInfo: ''
                                    FontName: 'auto'
                                    FontSize: -1
                                  FontWeight: 'auto'
                                   FontAngle: 'auto'
                                    Selected: 'on'
                                    MaskType: ''
                             MaskDescription: ''
                                    MaskHelp: ''
                            MaskPromptString: ''
                             MaskStyleString: ''
                               MaskVariables: ''
                      MaskTunableValueString: ''
                          MaskCallbackString: ''
                            MaskEnableString: ''
                        MaskVisibilityString: ''
                           MaskToolTipString: ''
                          MaskVarAliasString: ''
                          MaskInitialization: ''
                          MaskSelfModifiable: 'off'
                                 MaskDisplay: ''
                            MaskBlockDVGIcon: ''
                               MaskIconFrame: 'on'
                              MaskIconOpaque: 'opaque'
                              MaskIconRotate: 'none'
                              MaskPortRotate: 'default'
                               MaskIconUnits: 'autoscale'
                             MaskValueString: ''
                    MaskRunInitForIconRedraw: 'analyze'
                           MaskTabNameString: ''
                                        Mask: 'off'
                               MaskCallbacks: {0×1 cell}
                                 MaskEnables: {0×1 cell}
                                   MaskNames: {0×1 cell}
                      MaskPropertyNameString: ''
                                 MaskPrompts: {0×1 cell}
                                  MaskStyles: {0×1 cell}
                           MaskTunableValues: {0×1 cell}
                                  MaskValues: {0×1 cell}
                         MaskToolTipsDisplay: {0×1 cell}
                            MaskVisibilities: {0×1 cell}
                              MaskVarAliases: {0×1 cell}
                             MaskWSVariables: []
                                MaskTabNames: {0×1 cell}
                                  MaskObject: []
                                       Ports: [1 0 0 0 0 0 0 0 0]
                                    Position: [345 129 375 161]
                                 Orientation: 'right'
                            PortRotationType: 'default'
                             ForegroundColor: 'black'
                             BackgroundColor: 'cyan'
                                  DropShadow: 'off'
                                      IOType: 'none'
                               NamePlacement: 'normal'
                                    ShowName: 'on'
                           HideAutomaticName: 'on'
                                    Priority: ''
                                   Commented: 'off'
                       CodeProfilingOverride: 'inherit'
                      AttributesFormatString: ''
                           InstantiateOnLoad: 'off'
                         PolySpaceEndComment: ''
                       PolySpaceStartComment: ''
                               AncestorBlock: ''
                              ReferenceBlock: ''
                           SourceLibraryInfo: ''
                              LibraryVersion: ''
                          UserDataPersistent: 'off'
                                    UserData: []
                            CompiledIsActive: 'on'
                                     RTWdata: []
                                     HDLData: []
                                 Diagnostics: ''
                            DialogParameters: [1×1 struct]
                   IntrinsicDialogParameters: [1×1 struct]
                         AlgorithmParameters: [1×1 struct]
                SecondaryAlgorithmParameters: [1×1 struct]
                          CompiledSampleTime: [-1 0]
                            InputSignalNames: {''}
                           OutputSignalNames: {1×0 cell}
                         ModelParamTableInfo: []
                StatePerturbationForJacobian: '1.0e-05'
    SCDEnableBlockLinearizationSpecification: 'off'
          SCDBlockLinearizationSpecification: []
                                     CopyFcn: ''
                                   DeleteFcn: ''
                               UndoDeleteFcn: ''
                                     LoadFcn: ''
                               ModelCloseFcn: ''
                                  PreSaveFcn: ''
                                 PostSaveFcn: ''
                                     InitFcn: ''
                                    StartFcn: ''
                                    PauseFcn: ''
                                 ContinueFcn: ''
                                     StopFcn: ''
                               NameChangeFcn: ''
                                ClipboardFcn: ''
                                  DestroyFcn: ''
                                  PreCopyFcn: ''
                                     OpenFcn: ''
                                    CloseFcn: ''
                                PreDeleteFcn: ''
                              ParentCloseFcn: ''
                                     MoveFcn: ''
                                   BlockType: 'Scope'
                            BlockDescription: 'Displays input signals with respect to simulation time'
                               BlockKeywords: ""
                                  LinkStatus: 'none'
                            StaticLinkStatus: 'none'
                            PortConnectivity: [1×1 struct]
                                 PortHandles: [1×1 struct]
                                 LineHandles: [1×1 struct]
                          CompiledPortWidths: [0×0 struct]
                      CompiledPortDimensions: [0×0 struct]
                       CompiledPortDataTypes: [0×0 struct]
                           CompiledPortUnits: [0×0 struct]
                  CompiledPortComplexSignals: [0×0 struct]
                       CompiledPortFrameData: [0×0 struct]
                   DataTypeOverride_Compiled: 'UseLocalSettings'
              MinMaxOverflowLogging_Compiled: 'UseLocalSettings'
                                Capabilities: [1×1 Capabilities]
                             IOSignalStrings: []
                               RuntimeObject: [0×1 double]
                         ExtModeUploadOption: 'none'
                     ExtModeLoggingSupported: 'on'
                          ExtModeLoggingTrig: 'off'
                   TargetArchitectureMapping: {}
                       OpenAtSimulationStart: 'off'
                             DisplayFullPath: 'off'
                               NumInputPorts: '1'
                      LayoutDimensionsString: '[1 1]'
                                  SampleTime: '-1'
                  FrameBasedProcessingString: 'Elements as channels (sample based)'
                                MaximizeAxes: 'Off'
                                 AxesScaling: 'Manual'
                       AxesScalingNumUpdates: '10'
                                    TimeSpan: 'Auto'
                       TimeSpanOverrunAction: 'Wrap'
                                   TimeUnits: 'None'
                           TimeDisplayOffset: '0'
                              TimeAxisLabels: 'Bottom displays only'
                           ShowTimeAxisLabel: 'off'
                         ActiveDisplayString: '1'
                                       Title: '%<SignalLabel>'
                                  ShowLegend: 'off'
                                    ShowGrid: 'on'
                        PlotAsMagnitudePhase: 'off'
                       ActiveDisplayYMinimum: '-10'
                       ActiveDisplayYMaximum: '10'
                                      YLabel: ''
                  DataLoggingLimitDataPoints: 'off'
                        DataLoggingMaxPoints: '5000'
                     DataLoggingDecimateData: 'off'
                       DataLoggingDecimation: '2'
                                 DataLogging: 'off'
                     DataLoggingVariableName: 'ScopeData'
                       DataLoggingSaveFormat: 'Dataset'


>> 

模块的常用属性

属性名  作用说明
Path  模块在模型中的路径
Name  模块的名字
ShowName  模块的名字是否显示出来
BlockType  模块的类型名
Handle  模块的句柄,double数据表示
Position  模块的边框在当前模型中的位置
ForegroundColor  模块的前景色
BackgroundColor  模块的背景色
Sample Time  模块的采样时间
FontAngle  字体斜度
FontName  字体名
FontSize  字体大小
FontWeight  字体粗度

4.常量模块

常数模块在仿真过程中通常输出恒定的数值。常数模块不仅支持scalar数据作为参数输入,也支持向量、矩阵等多维数据。

提示标签  参数的变量名
Constant value  价值
Interpret vector parameters as 1-D  将向量参数解释为1-D
Sampling mode  采样模型
Sample time  采样时间
常数模块、加减乘除四则运算和增益模块及输入输出端口都拥有
Signal Attributes属性配置界面。
Output minimum和Output maximum中默认为空,不对数据输出进行任何检测。
一旦设置了数值,模块就会对输出值进行检查,当数值小于Output minimum
或者大于Output maximum时就会报错来提醒用户。 
Output data type对输出数据的类型提供了一些选项。

5.示波器模块

Scope模块是示波器模块,能够显示实数信号线。

(1) 修改Scope的输入端口个数

双击示波器模块,点击File->-Number of input ports,修改输入端口的个数为3。

(2)修改示波器的显示布局的个数

点击View->Configureation Properties->Number of input ports,将1修改成3。

(3)将示波器的数据输出

点击View->点击Configureation Properties->点击Logging->勾选Log data to workspace。

可以设置变量名(Variable name),选择存储到workspace中的存储格式。
1.Structure With Time将Scope获取到的采样信号存储在结构体中,
这个结构体包括:
(1)存储时间序列的time
(2)存储对应采样时间点的采样数据以及相关信息的结构体signals
(3)存储模块全路径及名字的变量blockName
signals本身也是一个结构体,访问采样数据的方式
是ScopeData.signals.values,采样数据按列排布。
ScopeData.time 存储时间序列的time
ScopeData.signals.values 存储对应采样时间点的采样数据。
2.Structure存储类型少了time这个时间序列的存储,其他成员相同。
3.Array为列向量方式存储。
4.dataset 为数据集数组用于将异构数据和元数据(包括变量和观察名称)
收集到单个容器变量中。数据集数组适合存储面向列的数据或表格数据,
这些数据通常以列的形式存储在文本文件或电子表格中,并且可以容纳
不同类型、大小、单位等的变量。

(4)示波器的动态参数和光标

Bilevel Measurements:用于测量输入信号的过渡时间、超调、负调及周期。

Cursor Measurements:用于光标测量。

Signal Statistics:信号的统计数据。

Peak Finder:峰值查找器

(5)修改示波器坐标轴粗细、颜色、名称、图例、图形颜色、标记点类型。

点击view->点击style或者Legend设置图例

(6)将示波器图像转化为Figure,保存为其他格式图像文件。

点击File-> print to Figure

(7)给示波器添加编辑选项,编程方式设置

Scope波形显示模块实际上也是一个Figure窗口,隐藏了菜单栏的属性,可以通过程序设置菜单栏,执行以下程序。

set(0,'ShowHiddenHandles','On')
set(gcf,'menubar','figure')

或者运行以下程序

shh = get(0,'ShowHiddenHandles');
set(0,'ShowHiddenHandles','On')
set(gcf,'menubar','figure')
set(gcf,'CloseRequestFcn','closereq')
set(gcf,'DefaultLineClipping','Off')
set(0,'ShowHiddenHandles',shh)

参考内容

[1] 博客园作者叮叮当当sunny的文章《Simulink仿真入门到精通(二) Simulink模块 》,文章链接如下:
https://www.cnblogs.com/dingdangsunny/p/12235689.html#_label0

[2] CSDN博主「小曾&同学」的文章《Matlab/Simulink快捷键》,文章链接如下:

https://blog.csdn.net/acknole/article/details/112344263

[3] CSDN博主 gameboy12615的文章《Matlab 示波器显示设置》,文章链接为:

https://blog.csdn.net/gameboy12615/article/details/6056390?locationNum=14


本文内容来源于网络,仅供参考学习,如内容、图片有任何版权问题,请联系处理,24小时内删除。


作 者 | 郭志龙

编 辑 | 郭志龙
校 对 | 郭志龙

相关推荐

基于FPGA的伪随机序列发生器设计(fpga伪随机数发生器)

基于FPGA的伪随机序列发生器设计1基本概念与应用1)LFSR:线性反馈移位寄存器(linearfeedbackshiftregister,LFSR)是指给定前一状态的输出,将该输出的线性...

基于MATLAB的BP神经网络预测计算App

BP(BackPropagation)神经网络可用于数据的预测,是经常使用的预测方法之一。之前介绍了基于MATLAB的guide制作的BP神经网络预测计算GUI界面,但是随着MATLAB版本的更新,之...

《matlab/simulink仿真ROS学习笔记》第1期

PC平台:window10软件平台:MATLABR2016a备注:不知道具体的matlab版本号,可以打开matlab在终端界面输入:version查看一,调用matlab软件中自带的ROS步骤:...

matlab读取表格数据以固定周期通过串口发送

如题,这里对数据的处理对于熟悉matlab各函数操作的同学来讲,是常规操作,但对于matlab新手或只是想借用matlab工具将存于PC端文件中的数据通过串口发送出去的工程人员来说,由于对matlab...

选择电磁阀必须要知道的8个因素(电磁阀的选择应从哪些方面考虑)

如何正确选择电磁阀,电磁阀的种类、规格、标准以及根据不同的介质选择的型号各不相相同,电磁阀的参数选择不全面的话,会影响使用寿命、诱发各种潜在危险甚至事故,下面诺伊曼的工程师将与您一起探讨关于正确选择电...

一种图像局部特征快速匹配算法(图像局部特征描述和提取方法研究)

摘要:在图像处理和机器视觉领域,SIFT是目前被广泛应用的一种基于局部特征的图像匹配算法。针对SIFT算法匹配速度较慢和常常存在错误匹配对的问题,本文提出在匹配过程中采用角度相似性分析替代传统的欧...

增益映射耦合局部正则化的图像重构算法

朱莉(西安科技大学计算机学院,陕西西安710054)摘要:针对当前的图像重构方法在对多帧超分辨率图像复原时,存在明显的模糊效应与振铃效应的不足,提出增益映射控制耦合局部正则化的图像重构算法。首...

每天一个MATLAB小技巧(9)(matlab简单教程)

欢迎关注公众号:【阿波兹得】上文接:每天一个MATLAB小技巧(8)如果你觉得我的文章对你有亿点点帮助的话,兄弟姐妹们看的时候顺便戳一下关注、点赞、收藏~谢谢朋友们,大家的支持就是我不断更新的最大动力...

零基础入门Matlab:两小时快速上手指南

前言Matlab作为一款强大的数学计算和可视化工具,广泛应用于工程、科研和数据分析领域。本文为零基础学习者量身定制,通过简洁明了的讲解和案例,助你快速掌握Matlab核心功能,两小时轻松入门!1.界...

用改进的深度差分特征识别人体部位

摘要:为了进一步提高人体部位识别正确率,考虑人体部位尺寸不一特性,提出了改进型深度差分特征。改进型深度差分特征根据人体部位尺寸大小确定特征偏移量取值,然后利用随机森林算法训练分类模型,实现了人体部...

MATLAB《自动控制原理》相关编程(二)

摘要:本文主要讲解自动控制原理中涉及的相关MATLAB函数,包括拉式变换和反拉式变换、传递函数的化简(并联和串联)、带延时的传递函数、单位速度、单位加速度和其他任意输入的响应。1.拉式变换时域函数转...

MATLAB-图片自动编号、命名及保存

在进行运算的可以,可能经常需要对图形进行保存,手动操作比较繁琐,可以自动的生成图片并按照一定的规律自动命名,这样可以提高效率。实现功能会涉及到一些函数的使用和往期介绍的图像的保存方法。下面简单回顾一下...

MATLAB的Simulink常用模块(一)(simulink的matlab function模块)

在MATLAB的Simulink中有些常用的模块,今天主要介绍常数模块、示波器模块、以及模块属性的操作函数。1.模块的构成元素输入/输出端口:作为模块之间传递数据的纽带,连接输入信号和输出信号。模块...

闪耀金色光芒的冥王侍卫,掌管宇宙睡意的使者,温柔杀手修普诺斯

在极乐净土中有两位守护冥王哈迪斯的神,一个是死神塔纳多斯,另一个就是他的哥哥修谱诺斯。这两个神明一个是能掌握人类生死的大权,另一个则是负责人类和神仙的睡眠。可以说这两个人都十分的厉害。那么作者就给大...

无线安全的高级利用:隔离网络里你不知道的Wi-Fi隐蔽传输通道

2018年4月,在荷兰阿姆斯特丹HackInTheBox安全会议上,我们分享了一个关于隔离网攻击技术的议题——GhostTunnel:CovertDataExfiltratio...

取消回复欢迎 发表评论: