听万门的一个Matlab实践课做的笔记

知识结构

笔记链接(点我)

目录

  • 笔记链接(点我)
  • 基础
  • 常用模块库
  • 动态系统仿真
  • 子系统
  • S函数

基础

  • 定义

    • Simulink是一个进行动态系统建模、仿真和综合分析的集成软件包。
    • 可处理系统
      • 线性、非线性系统
      • 离散、连续、混合系统
      • 单任务、多任务离散事件系统
    • 组成
      • 模块库
      • 模型构造
      • 指令分析
      • 演示程序
    • 既适用于Top-down又适用于Bottom-up
  • 特点

    • 设计简单
    • 分析直观
    • 仿真快速、准确
  • 典型模型结构

    • 输入、状态、输出
    • .mdl文件
  • 实例

    • 创建空白模块
    • 添加模块
    • 添加连接
    • 仿真
    • 保存模型
  • 工作原理

    • 模型编译
    • 连接
    • 仿真执行
    • 【一般采用数值积分仿真,相邻两个时间点的长度为步长,步长的大小取决于求解器的类型】

常用模块库

  • 公共模块库 + 专业模块库

  • Continuous(连续模块组)

    • 包括连续时间线性系统、连续时间延迟模块
  • Math Operations(数学运算模块组)

    • 包括数学运算、向量运算、复数、向量间的转换运算四种
  • Signal Routing(信号传输选择模块组)

    • 包括信号传输与信号存储、访问两种
  • Sinks(输出模块组)

    • 包括模型及子系统输出、数据观察器、仿真控制三种
  • Sources(信号源模块组)

    • 包括模型及子系统输入与信号发生器两种
  • 部分专业模块库

    • Control System Toolbox
    • Communications Blockset
    • DSP Blockset
    • Fuzzy Logic Toolbox
    • Neural Network Blockset
    • Simulink Extras
    • Stateflow
    • Real-Time Workshop (RTW)

动态系统仿真

  • 建立简单模型

    • 建立模型窗口
    • 将功能模块从模块库中复制到模型窗口
    • 对模块进行连接,构成所需要的系统模型
    • 【视觉表现为直观的方框图,文件上则是扩展名为mdl的ASCII代码,数学上表现为微分方程或差分方程,行为上模拟了实际系统的动态特性】
    • 编译报错注意检查模块是否来源于同一模块组
  • 模块简单操作

    • 模块的复制(或创建)
    • 模块的移动
    • 模块的删除
    • 模块的外形调整
      • 改变模块对象的大小
      • 改变模块对象的方向
      • 颜色设定
    • 改变模块名称
    • 改变模块名称的字体
    • 改变模块名称的位置
    • 是否显示模块名称
  • 模块的连接

    • 信号线

      • 包括标量信号和向量信号
    • 向量信号线与线型设定
    • 信号线设置标签
    • 信号线弯折(shift)
    • 信号线分支(ctrl)
  • 模块参数、属性设置

    • General

      • Description
      • Priority
      • Tag
    • Block Annotation
      • 有效属性标记
    • Callbacks
      • 回调函数
      • ClipboardFcn、DeleteChildFcn、ErrorFcn、PreCopyFcn、PreDeleteFcn
    • 仿真参数设置
      • Solver

        • Simulation time
        • Solver selection
          • Type:固定步长or可变步长

            • 可变应指定容许误差限
          • Solver:具体算法类型
            • ode45
        • Relative tolerance
        • Max step size
      • Data Import/Export
        • Output option

          • Refine out(细化输出)
          • Produce additional output
          • Produce specified output only
        • Load from work space
          • xInitial state

            • 优先度高
            • save to workspace
            • save option
      • Diagnostics
        • Simulation option(一致性检验)
        • Configuration option
      • Code Generation
      • Coverage
  • 仿真结果观察

    • 观察输出信号

      • 输出模块组Sinks中的Scope、Display数学显示器
      • 返回MATLAB命令窗口,利用绘图命令
      • 输入To Workspace模块,用绘图命令
    • Scope示波器

      • 是观察仿真结果的主要工具
      • 可有多个坐标(每个端口一个)
      • 所有坐标有共同的时间坐标和各自独立的y坐标
    • Display

      • 以数字形式显示
      • 可显示单个信号、向量信号、矩阵信号(帧信号)
    • To Workspace模块

子系统

  • 创建

    • 添加Subsystem模块

      • Ports & System库
      • In1为外部输入,Out1为内部输出
    • 组合已有模块
      • 用方框包围
      • Create subsystem
  • 分类

    • 条件子系统

      • 使能子系统

        • 使能控制信号为标量

          • 大于零则开始执行
        • 使能控制信号为向量
          • 其中一个大于零则开始执行
      • 触发子系统
        • 触发事件发生的时刻执行
        • 触发事件
          • 上升沿触发
          • 下降沿触发
          • 跳变触发
          • 回调函数触发
      • 半波整流模型

S函数

  • S函数是系统函数(System Function)的简称

    • 由特定语法构成
    • 用于描述并实现连续系统、离散系统以及复合系统等动态系统
    • 可接收来自Solver的相关信息,并对求解器发出的命令做出适当响应
  • 建立

    • 可用m文件、C或Mex文件编写
    • function[sys, x0, str, ts] = fname[(t, x, u, flag)]
      • sys —— 通用返回参数
      • x0 —— 初始状态,flag为0有效
      • str —— 为未来应用保留
      • ts —— 两列分别标识采样时间间隔和偏移
    • 设计可参考模板文件sfuntmpl.m
  • S-Function的子函数

    • mdlInitializeSize
    • mdlDerivatives
    • mdlUpdate
    • mdlOutput
    • mdlGetTimeOfNextVarHit
    • mdlTerminate
欢迎交流讨论与指正

Matlab基础学习笔记(五)—— Simulink仿真相关推荐

  1. 正交基 matlab,matlab基础学习(五)之映射和正交基

    matlab基础学习(5)之映射和正交基 一.映射 在matlab中,矢量y正交映射到矢量x上的定义如下: Px(y) = /(x^2)*x 对于长度为N的列矢量y映射到长度为N的列矢量x上的计算方法 ...

  2. MATLAB基础学习笔记01:初探MATLAB世界

    文章目录 一.安装MATLAB2016 (一)下载MATLAB2016 (二)安装MATLAB2016 二.启动MATLAB2016 --解决远程桌面启动报错的问题 三.变量操作 (一)给变量赋值 ( ...

  3. MATLAB基础学习(五)-MATLAB矩阵介绍

    1.MATLAB赋值语句 (1)变量=表达式 (2)表达式 其中表达式是用运算符将有关运算量连接起来的式子,其结果是一个矩阵 例如计算表达式的值,并显示计算结果,在MATLAB命令窗口输入指令: 其中 ...

  4. MATLAB基础学习笔记02:掌握MATLAB运算

    文章目录 一.算术运算 (一)算术运算符 (二)案例演示 1.算术加减乘运算 2.算术除运算 3.乘方运算 (1)算术乘方运算 (2)矩阵点乘方运算 4.矩阵左除运算 5.矩阵乘法 6.矩阵点乘 7. ...

  5. Java学习笔记(五):一张图总结完JVM8基础概念

    Java学习笔记(五):一张图总结完JVM8基础概念 引文 最近在学习JVM的相关内容,好不容易把基础概念全部都学了一遍,却发现知识网络是零零散散的.迫不得已,只好再来一次总的归纳总结.为了更好的理解 ...

  6. Python基础学习笔记之(一)

    Python基础学习笔记之(一) zouxy09@qq.com http://blog.csdn.net/zouxy09 前段时间参加微软的windows Azure云计算的一个小培训,其中Pytho ...

  7. Python3 基础学习笔记 C05【字典】

    CSDN 课程推荐:<8小时Python零基础轻松入门>,讲师齐伟,苏州研途教育科技有限公司CTO,苏州大学应用统计专业硕士生指导委员会委员:已出版<跟老齐学Python:轻松入门& ...

  8. 吴恩达《机器学习》学习笔记五——逻辑回归

    吴恩达<机器学习>学习笔记五--逻辑回归 一. 分类(classification) 1.定义 2.阈值 二. 逻辑(logistic)回归假设函数 1.假设的表达式 2.假设表达式的意义 ...

  9. 【AngularJs学习笔记五】AngularJS从构建项目开始

    为什么80%的码农都做不了架构师?>>>    #0 系列目录# AngularJs学习笔记 [AngularJs学习笔记一]Bower解决js的依赖管理 [AngularJs学习笔 ...

最新文章

  1. Visual Studio 2017 最新全量离线下载方法[有惊喜]
  2. Spring注解的使用步骤,@Component注解创建的对象名称,常用注解Component、Repository、Service以及Controller的区别
  3. 准备写个nhibernate的学习笔记
  4. Office 365开发者的前端必备课程
  5. DHCP|什么是DHCP|DHCP介绍
  6. 数据粒度的上卷和下钻
  7. WebLogic配置JNDI数据源
  8. 为什么redux要返回一个新的state引发的血案
  9. Java基础笔记-String类
  10. MapGIS67及Map2Shp安装教程
  11. 2000坐标系xy坐标几位_2000坐标系(2000坐标系x和y坐标几位数)
  12. 西门子MM4系列变频器反转功能的具体使用方法和注意事项
  13. 蓝字冲销是什么意思_​红字发票和蓝色发票是什么意思
  14. 乐高大颗粒作品19:端午节做一个粽子
  15. 最小二乘拟合多项式(利用构造正交多项式的方法)C++
  16. 热门软件中文在线文档
  17. Ubuntu 16.04配置Wine并安装TIM
  18. vue 引入高德地图
  19. 禁止暴风影音的自动升级的方法
  20. 基于STM32的智能电子秤设计

热门文章

  1. CentOS 7虚拟机克隆,以及克隆后主机名和静态IP地址的修改,无法重启网络服务( because the control process exited with error code)的解决方法
  2. DeepMind 发布强化学习通用算法 DreamerV3,AI 成精自学捡钻石
  3. 交通灯2-核心器件选型报告
  4. 关于网站自定义字体css加密篇
  5. 嵌入式分享合集122
  6. 配置tensorflow-gpu,大过年的头秃啊
  7. 【Android开发】在Android Studio上关联使用第三方模拟器(MuMu模拟器)调试方法
  8. python写入excel公式有哪些库_python工具库介绍-xlwt 创建xls文件(excel)
  9. 抖音KOL达人推广传播靠谱吗?
  10. 李沐动手学深度学习(pytorch版本)d2lzh_pytorch包的缺少安装问题