MATLAB/Simulink 通信原理及仿真学习(二)
文章目录
- MATLAB/Simulink 通信原理及仿真学习(二)
- simulink仿真
- 常用的Simulink库
- 1. 信号源模块库
- 2. 数序运算模块
- 3. 信号输出模块库
- 4.仿真搭建
- 5.搭建自己的库
- 6.S-函数编写
MATLAB/Simulink 通信原理及仿真学习(二)
simulink仿真
-
交互式、图形化的建模环境
鼠标拖动不同模块库中的系统模块并将它们连接起来。 -
交互式的仿真环境
下拉菜单或通过命令行进行仿真,例如蒙特卡洛仿真。 -
专用模块库
DSP、Blockset和Communication Blocket等。更重要的是用户可以对系统模型进行代码生成,并将生成代码下载到不同的目标机上。 -
提供了仿真库的扩充和定制机制
可以扩展仿真环境功能,接入第三方开发提供的模块库进行更高级的系统仿真。 -
与MATLAB工具箱的集成
Simulink的有点:(1)基于矩阵的数值计算;(2)高级编程语言;(3)图形可视化;(4)工具箱提供面向具体应用领域的功能;(5)丰富的数据I/O工具;(6)提供与其他高级语言的接口;(7)支持多平台;(8)开放与可扩展的体系结构。
常用的Simulink库
1. 信号源模块库
- 输入端口模块(In1):用来反映整个系统的输入端子,设置在模型线性化与命令行仿真时是必须的。
- 常数输入模块(Constant):常数作为输入。
- 普通信号源发生器(Signal Generator):能够生成若干种常用信号,如:方波、正弦、锯齿波,允许用户自由地调整其幅值、相位及其他信号。
- 接地线模块(Ground):零输入模块,Simulink仿真中如果一个模块的输入端子没有接任何其他模块,接入此输入端子即可避免错误信息。
- 时间信号模块(Clock):生成当前仿真时钟, 在与时间有关的指标求取中很有意义的。
- 读文件模块(From File)和读工作空间模块(From Workspace):两个模块允许从文件或MATLAB工作空间中读取信号。
- 带宽限幅白噪声(Band-Limited White Noise):
- 其他类型信号输入:阶跃输入(Step)、斜坡输入(Ramp)、脉冲信号(Pulse Generator)、正弦信号(Sine Wave)等。
2. 数序运算模块
-
增益函数(Gain):输出信号等于输入信号乘以增益模块中的值。
-
求和函数(Sum):求输入的多路信号的和或差。
-
代数约束模块(Algebraic Constraint):约束输入信号,令其值为0.
-
复数的实部虚部提取模块(Complex to Real-Imag)、复数变换成幅值幅角的模块(Complex to Magnitude-Angle)及其反变换。
-
数学函数,绝对值(Abs),符号函数(Sign),三角函数(Trigonometric)、取整模块(Rounding Function)等。
-
数字逻辑模块,逻辑运算模块(Logic Operator)、组合逻辑模块(Combinational Logic),常用于逻辑电路搭建。
3. 信号输出模块库
- 输出端口模块(Out1):反映整个系统的输出端子,这样的设置在模型线性化与命令行仿真时是必须的。
- 示波器模块(Scope):将输入信号在示波器中显示出来(非常常用的模块)。
- x-y示波器(x-y Graph):将两路输入信号分别作为示波器的两个坐标轴,将信号的相轨迹显示出来。
- 工作空间写入模块(To Workspace):将输入信号直接写到MATLAB的工作空间中。该模块默认的写法是结构体型的数据, 可以通过设置将之设置成矩阵型的。
- 写文件模块(To File):将输入信号写到文件中。
- 数字显示模块(Display):将输入信号用数字的形式显示出来。
- 仿真定制模块(Stop Simulation):如果输入的信号为非零时,将强行终止正在进行的仿真过程。
- 信号终结模块(Terminator):可以将该模块连接到闲置的未连接的模块输出信号上,避免出现警告。
4.仿真搭建
- 模型选取后,可以鼠标左击起始模块,之后按住Ctrl座机目标块,系统会自动进行模块之间的连接。
- 按住Shift键后可以进行连接线的调整。
- 可以使用Signal Routing中的Mux模块,进行模块组合,将某些模块的输出信号(常为标量)组合为一个矢量信号,并将其作为另一个模块的输入。
- 注意在仿真时,如果仿真的时间段较大,这是系统默认的最大步长step=tend−tbegin50step = \frac{t_{end}-t_{begin}}{50}step=50tend−tbegin会比较大,这是需要去调整一下最大步长,即如下:
5.搭建自己的库
- 这里步骤很多特别繁琐,用到的时候看例子学习吧,有关于 Subsystem Examples 的例子,这里就简单记录一下步骤过程吧。
- 从Ports&Subsystem****模块中选取Subsystem**模块;
- 双击打开Subsystem模块进行像不应内容编辑;
- 进行模块封装。
6.S-函数编写
- S-函数时系统函数(System-functions)的简称,采用非图形化的方式描述一个功能块。
状态矢量x\boldsymbol xx分成两部分,连续实际状态xc′\boldsymbol x_{c}^{'}xc′和离散事件状态xd+1\boldsymbol x_{d+1}xd+1。
- 涉及的概念知识有:(1)直接反馈:(2)可变长度输入;(3)采样时间和偏移。
可以去MATLAB安装路径下 \toolbox\simulink\blocks中查找S-函数模板sfuntmpl.m,运行时注意必须把simulink放置在S-函数文件所在的目录。
相关文章:

MATLAB/Simulink 通信原理及仿真学习(二)
文章目录MATLAB/Simulink 通信原理及仿真学习(二)simulink仿真常用的Simulink库1. 信号源模块库2. 数序运算模块3. 信号输出模块库4.仿真搭建5.搭建自己的库6.S-函数编写MATLAB/Simulink 通信原理及仿真学习(二) simulink仿真 交…...
CentOS7 防火墙(firewall)的操作命令
CentOS7 防火墙(firewall)的操作命令 安装:yum install firewalld 1、firewalld的基本使用 启动: systemctl start firewalld 查看状态: systemctl status firewalld 禁用,禁止开机启动: s…...
文献工具汇总:论文查找、文献管理、文献翻译
科研人员论文哪里找?文献如何管理?本文给推荐一些提高论文阅读写作效率的一些资料,包括查找论文、文献管理、文献翻译等方面。 一、查找文献 PMC(Pubmed Cenral) Pubmed官方系统中,将免费的全文集中在此,…...

SQL零基础入门学习(三)
SQL零基础入门学习(二) SQL WHERE 子句 WHERE 子句用于提取那些满足指定条件的记录。 SQL WHERE 语法 SELECT column1, column2, ... FROM table_name WHERE condition;参数说明: column1, column2, …:要选择的字段名称&…...
苹果手机如何快速的直接从相册里面的图片提取文字?
//在线工具地址https://ocr.bytedance.zj.cn/image/ImageText在当今信息爆炸的时代,图文并茂已经成为了一个广告宣传的常用方式。然而,图片中的文字信息往往难以获取,尤其对于那些需要快速获取信息的人们来说,阅读图片中的文字会是…...
【go】函数调用
程序中编写的函数在编译阶段会被编译成一段段的指令存放在可执行文件中,在程序运行阶段这些内存会加载到虚拟地址空间的代码段。 当函数A调用了函数B的时候,对应的会生成一条call指令,程序在运行到call指令时就会跳转到对应的B函数的代码段的…...
Linux系统之Uboot、Kernel、Busybox思考之四
目录 三 内核的运行 9 设备树: 1) 设备树产生缘由 2) 设备树方案的流程 3) 有了上述概念,为了支撑整个设备树的工程实现,内核实现以下内容 4) 内核解析设备树 5) 入口分析 6) 解析处理。 10 udev devfs sysfs 11 系统中的USB设备 12 网…...

为什么要经常阅读和分析计算机SCI期刊论文? - 易智编译EaseEditing
训练阅读与分析期刊论文的能力,可以增加中长期的学术竞争力。 只要能够充分掌握阅读与分析期刊论文的技巧,就可以水到渠成地轻松进行「创新」的工作。 所以,只要深入掌握到阅读与分析期刊论文的技巧,就可以掌握到大学生不曾研习过…...
Shiro框架详解
1.Shiro简介 1.1.基本功能点 Shiro 可以非常容易的开发出足够好的应用,其不仅可以用在 JavaSE 环境,也可以用在 JavaEE 环境。Shiro 可以帮助我们完成:认证、授权、加密、会话管理、与 Web 集成、缓存等。 Authentication:身份…...

redhawk:GSC file与STA file
1.GSC file redhawk做lowpower分析时需要GSC(Global Switching Configuration)file指导block/instance/power domain的开关状态。 Syntax(in GSR file): GSC_FILES <gsc_FilePathName> Syntax(in GSC file&a…...
【Python学习笔记】46.Python3 math 模块和requests 模块
前言 本章介绍Python的math 模块和requests 模块。 Python math 模块 Python math 模块提供了许多对浮点数的数学运算函数。 math 模块下的函数,返回值均为浮点数,除非另有明确说明。 如果你需要计算复数,请使用 cmath 模块中的同名函数…...
页面导航-yang
这就是一个简单的导航 👀 机器视觉? 👨🔧 环境搭建 👨🔧 关与Tensorflow-gpu Anaconda Pycharm配置问题解决方案 👼 口罩识别 💻 实时口罩检测mp4视频识别 Ⅰ 💻…...
Mac配置homebrew
mac配置homebrew Homebrew是一款Mac OS平台下的软件包管理工具,拥有安装、卸载、更新、查看、搜索等很多实用的功能。简单的一条指令,就可以实现包管理,而不用你关心各种依赖和文件路径的情况,十分方便快捷。Homebrew主要有四个部…...

如何无报错运行代码YOLOv6,实现目标识别?
YOLOv6是由美团视觉团队开发的1.环境配置我们先把YOLOv6的代码clone下来git clone https://github.com/meituan/YOLOv6.git安装一些必要的包pip install pycocotools2.0作者要求pytorch的版本是1.8.0,我的环境是1.7.0,也是可以正常运行的pip install -r requirement…...
SQL91 返回购买价格为 10 美元或以上产品的顾客列表
描述OrderItems表示订单商品表,含有字段订单号:order_num、订单价格:item_price;Orders表代表订单信息表,含有顾客id:cust_id和订单号:order_numOrderItems表order_numitem_pricea110a21a21a42a…...
Goreplay使用教程0221
1、简介Goreplay 是用 Golang 写的一个HTTP 实时流量复制工具。功能更强大,支持流量的放大、缩小,频率限制,还支持把请求记录到文件,方便回放和分析,也支持和 ElasticSearch 集成,将流量存入 ES 进行实时分…...

9、GPT-1-2-3
GPT GPT系列即基于Transformer Decoder实现的预训练语言模型,在各类复杂的NLP任务中都取得了不错的效果,如文章生成、代码生成、机器翻译,Q&A等。 对于一个新的任务,GPT仅仅需要非常少的数据便可以理解该任务,并…...

Python-四分位数计算
怎么计算四分位数先理解四分位数怎么计算:可参考https://zhuanlan.zhihu.com/p/235345817,假设数列一共有n个数1)当 (n1)/4可以整除时,Q1第在(n1)/4位Q2第 (n1)/2位Q3第(n1)/4*3位举…...

一个简单的步骤让你的 Python 代码更干净
说起来容易做起来难,我们都知道代码可读性非常重要,但是写的时候总是随心所欲,不考虑类型提示、import 排序、PEP8 规范。今天分享一个小技巧,通过一个简单的步骤就可以让你的 Python 代码更干净。这就是 pre-commit:可…...

linux集群技术(二)--keepalived(高可用集群)(一)
高可用集群简介keepalived简介 1.高可用集群简介 1.1什么是高可用集群 高可用集群(High Availability Cluster,简称HA Cluster),是指以减少服务中断时间为目的的服务器集群技术。它通过保护用户的业务程序对外不间断提供的服务&am…...

7.4.分块查找
一.分块查找的算法思想: 1.实例: 以上述图片的顺序表为例, 该顺序表的数据元素从整体来看是乱序的,但如果把这些数据元素分成一块一块的小区间, 第一个区间[0,1]索引上的数据元素都是小于等于10的, 第二…...

K8S认证|CKS题库+答案| 11. AppArmor
目录 11. AppArmor 免费获取并激活 CKA_v1.31_模拟系统 题目 开始操作: 1)、切换集群 2)、切换节点 3)、切换到 apparmor 的目录 4)、执行 apparmor 策略模块 5)、修改 pod 文件 6)、…...

【WiFi帧结构】
文章目录 帧结构MAC头部管理帧 帧结构 Wi-Fi的帧分为三部分组成:MAC头部frame bodyFCS,其中MAC是固定格式的,frame body是可变长度。 MAC头部有frame control,duration,address1,address2,addre…...

基于当前项目通过npm包形式暴露公共组件
1.package.sjon文件配置 其中xh-flowable就是暴露出去的npm包名 2.创建tpyes文件夹,并新增内容 3.创建package文件夹...

Unsafe Fileupload篇补充-木马的详细教程与木马分享(中国蚁剑方式)
在之前的皮卡丘靶场第九期Unsafe Fileupload篇中我们学习了木马的原理并且学了一个简单的木马文件 本期内容是为了更好的为大家解释木马(服务器方面的)的原理,连接,以及各种木马及连接工具的分享 文件木马:https://w…...

LLMs 系列实操科普(1)
写在前面: 本期内容我们继续 Andrej Karpathy 的《How I use LLMs》讲座内容,原视频时长 ~130 分钟,以实操演示主流的一些 LLMs 的使用,由于涉及到实操,实际上并不适合以文字整理,但还是决定尽量整理一份笔…...

Linux nano命令的基本使用
参考资料 GNU nanoを使いこなすnano基础 目录 一. 简介二. 文件打开2.1 普通方式打开文件2.2 只读方式打开文件 三. 文件查看3.1 打开文件时,显示行号3.2 翻页查看 四. 文件编辑4.1 Ctrl K 复制 和 Ctrl U 粘贴4.2 Alt/Esc U 撤回 五. 文件保存与退出5.1 Ctrl …...

逻辑回归暴力训练预测金融欺诈
简述 「使用逻辑回归暴力预测金融欺诈,并不断增加特征维度持续测试」的做法,体现了一种逐步建模与迭代验证的实验思路,在金融欺诈检测中非常有价值,本文作为一篇回顾性记录了早年间公司给某行做反欺诈预测用到的技术和思路。百度…...

elementUI点击浏览table所选行数据查看文档
项目场景: table按照要求特定的数据变成按钮可以点击 解决方案: <el-table-columnprop"mlname"label"名称"align"center"width"180"><template slot-scope"scope"><el-buttonv-if&qu…...
Kafka主题运维全指南:从基础配置到故障处理
#作者:张桐瑞 文章目录 主题日常管理1. 修改主题分区。2. 修改主题级别参数。3. 变更副本数。4. 修改主题限速。5.主题分区迁移。6. 常见主题错误处理常见错误1:主题删除失败。常见错误2:__consumer_offsets占用太多的磁盘。 主题日常管理 …...