设计报告--008---差错控制编码的SIMULINK建模与仿真

合集下载

Simulink建模与仿真(精华版)

Simulink建模与仿真(精华版)

3.2.2、仿真运行原理 、
Simulink仿真包括两个阶段;初始化阶段和模型执行阶段 仿真包括两个阶段; 仿真包括两个阶段 (1) 模块初始化 在初始化阶段主要完成以下工作: 在初始化阶段主要完成以下工作: 模型参数传给Matlab进行估值,得到的数值结果将作为模型 进行估值, ① 模型参数传给 进行估值 的实际参数; 的实际参数; 展开模型的各个层次, ② 展开模型的各个层次,每一个非条件执行的子系统被它所包 含的模块所代替; 含的模块所代替;
上 页
下 页
3
Simulink的特点 的特点: 的特点
(1)丰富的可扩充的预定义模块库 ; 丰富的可扩充的预定义模块库 (2)交互式的图形编辑器来组合和管理直观的模块图 ; 交互式的图形编辑器来组合和管理直观的模块图 (3)以设计功能的层次性来分割模型,实现对复杂设计的管理; 以设计功能的层次性来分割模型, 以设计功能的层次性来分割模型 实现对复杂设计的管理; (4)通过 通过Model Explorer 导航、创建、配置、搜索模型中的任 导航、创建、配置、 通过 意信号、参数、属性, 意信号、参数、属性,生成模型代码 ; (5)提供 提供API(Application Programming Interface,应用程序编程接口 应用程序编程接口) 提供 应用程序编程接口 用于与其他仿真程序的连接或与手写代码集成 ; (6)使用 使用Embedded MATLAB™ 模块在 模块在Simulink和嵌入式系统 使用 和嵌入式系统 执行中调用MATLAB算法 ; 执行中调用 算法 (7)使用定步长或变步长运行仿真,根据仿真模式 使用定步长或变步长运行仿真, 使用定步长或变步长运行仿真 根据仿真模式(Normal, Accelerator,Rapid Accelerator)来决定以解释性的方式运行 来决定以解释性的方式运行 或以编译C代码的形式来运行模型 或以编译 代码的形式来运行模型 ; (8)图形化的调试器和剖析器来检查仿真结果,诊断设计的性 图形化的调试器和剖析器来检查仿真结果, 图形化的调试器和剖析器来检查仿真结果 能和异常行为 ; (9)可访问 可访问MATLAB从而对结果进行分析与可视化,定制建模环境, 从而对结果进行分析与可视化, 可访问 从而对结果进行分析与可视化 定制建模环境, 定义信号参数和测试数据; 定义信号参数和测试数据; (10)模型分析和诊断工具来保证模型的一致性,确定模型中的错误。 模型分析和诊断工具来保证模型的一致性, 模型分析和诊断工具来保证模型的一致性 确定模型中的错误。

基于循环码的差错控制编码系统建模与仿真

基于循环码的差错控制编码系统建模与仿真

基于循环码的差错控制编码系统建模与仿真一、设计目的及要求设计目标:通过利用MATLAB/simulink系统仿真功能,设计一个基于循环码的差错控制编码系统。

实验知识要求:循环码的编、译码原理,差错控制编码系统的特点。

MATLAB/simulin系统仿真知识。

实验软件平台:MATLAB7.0软件。

二、课程设计的任务2.1循环码及差错控制编码的概念及理论基础在实际应用中,数据传输一般采用系统码的编码方式,即在发送的信息序列之后附加上特定位数的冗余位,该冗余位称为所发送信息序列的监督位。

监督位一般是由所发送的信息序列经过恰当的变化而生成的。

若监督位由信息位经线性组合而得到,则称得到的系统码为线性分组码。

在线性分组码中有一类重要的码,称为循环码。

这种码的编码和解码设备都不太复杂,而且检错和纠错的能力都较强。

循环码除了具有线性码的一般性质外,还具有循环性,即任一码组循环一位后仍然是该编码中的一个码组。

(n,k)循环码表示其中信息位为k,监督位为n-k。

如果一种码的所有码多项式都是多项式g(x)的倍式,则称g(x)为该码的生成多项式。

在循环码中,次数最低的非0首多项式就是生成多项式g(x),其他码多项式都是其倍数。

(n,k)循环码的生成多项式g(x)一定是n x+1的因式:n x+1=g(x)h(x);反之,若g(x)为n-k次,且能被n x+1整除,则此g(x)一定生成一个(n,k)循环码。

信道编码的目的是提高信号传输的可靠性,信道编码是在经过信源编码的码元序列中增加一些多余的比特,目的在于利用这种特殊的多余信息去发现或纠正传输中发生的错误。

在信道编码只有发现错码能力而无纠正错码能力时,必须结合其他措施来纠正错码,避免删除错码带来的负面影响。

上诉手段称为差错控制。

在对乘性干扰和加性干扰进行处理后仍不能达到误码率要求时,就需要采用差错控制措施。

差错控制技术有以下4种:(1)检错重发:在发送码元中加入差错控制码元,当检测到有错码时,利用反向信道通知发送端重发。

MATLABSimulink与控制系统仿真实验报告

MATLABSimulink与控制系统仿真实验报告

MATLABSimulink与控制系统仿真实验报告MATLAB/Simulink与控制系统仿真实验报告姓名:喻彬彬学号:K031541725实验1、MATLAB/Simulink仿真基础及控制系统模型的建立一、实验目的1、掌握MATLAB/Simulink仿真的基本知识;2、熟练应用MATLAB软件建立控制系统模型。

二、实验设备电脑一台;MATLAB仿真软件一个三、实验内容1、熟悉MATLAB/Smulink仿真软件。

2、一个单位负反馈二阶系统,其开环传递函数为G(s)10。

用Simulink建立该s23s控制系统模型,用示波器观察模型的阶跃响应曲线,并将阶跃响应曲线导入到MATLAB 的工作空间中,在命令窗口绘制该模型的阶跃响应曲线。

3、某控制系统的传递函数为Y(s)G(s)s50。

用Simulink建其中G(s)2X(s)1G(s)2s3s立该控制系统模型,用示波器观察模型的阶跃响应曲线,并将阶跃响应曲线导入到MATLAB的工作空间中,在命令窗口绘制该模型的阶跃响应曲线。

4、一闭环系统结构如图所示,其中系统前向通道的传递函数为20,而且前向通道有一个[-,]的限幅环节,图中用N 表G(s)s12s20s示,反馈通道的增益为,系统为负反馈,阶跃输入经倍的增益作用到系统。

用Simulink建立该控制系统模型,用示波器观察模型的阶跃响应曲线,并将阶跃响应曲线导入到MATLAB的工作空间中,在命令窗口绘制该模型的阶跃响应曲线。

四、实验报告要求实验报告撰写应包括实验名称、实验内容、实验要求、实验步骤、实验结果及分析和实验体会。

五、实验思考题总结仿真模型构建及调试过程中的心得体会。

1题1、利用Simulink的Library窗口中的【File】→【New】,打开一个新的模型窗口。

分别从信号源库、输出方式库、数学运算库、连续系统库中,用鼠标把阶跃信号发生器、示波器、传递函数和相加器4个标准功能模块选中,并将其拖至模型窗口。

simulink入门及仿真实例

simulink入门及仿真实例

17
结果如下:上图为v(t), 下图为h(t).
18
r1 r2 1, n1 n2 100, s1 0.5, s2 2, x0 y0 10.
对x(t), y(t)进行模拟, 研究其发展趋势.
16
例3 弹跳的皮球(help/demos/simulink中的一个例子):
v(t) 15 tgdt, g 9.81, 0 t 数学模型:h(t) 10 0 v(t)dt, when h 0, v 0.8v.
4
子库 Continuous和 Discrete分别存放连续 和离散的函数, 如连续函数有Derivative(求导 数), Integrator(积分器), State-Space(状态空间), Transfer Fcn( 传 递 函 数 ) 等 等 , 离 散 的 有 Discrete Transfer Fcn(离散传递函数), Discrete Filter(离散滤波器), Discrete State-Space(离散 状态空间)等等. 在Simulink Library Browser窗口中, 建立 一个新模型(new model), 即打开一个新的空 白模型窗口, 用鼠标左键点取所需要的模块 拖到模型窗口中, 用鼠标左键在模块间建立 连接线(若在已有连接线上分叉则用右键)即 可.
Simulink入门
什么是Simulink? Simulink是MATLAB提供的实现动态 系统建模和仿真的一个软件包. 它让用户 把精力从编程转向模型的构造. Simulink一个很大的优点是为用户省 去了许多重复的代码编写工作,
1
Simulink的启动
首先须确定MATLAB已安装了Simulink工 具箱. 在工具栏点击Simulink图标:

设计报告--008---差错控制编码的SIMULINK建模与仿真

设计报告--008---差错控制编码的SIMULINK建模与仿真

差错控制编码的SIMULINK建模与仿真一.线性分组码编码系统建模Reed-Solomon码编码系统框图:信源模块的系统框图:信宿模块的系统框图:1.循环冗余码编码系统建模与仿真CRC-16编码系统框图:信源模块的系统框图:信宿模块的系统框图:信号比较模块系统款图:M文件如下:x=[0.00001 0.0001 0.001 0.005 0.01 0.02 0.03 0.04 0.05 0.1 0.2 0.3 0.4 0.5]; y=x;ProtectedData=48;FrameInterval=0.010;BitPeriod=FrameInterval/ProtectedData;ProtectedDataWithCRC=ProtectedData+16;FrameLength=480;SimulationTime=1000;TotalFrameNumber=SimulationTime/FrameInterval;for i=1:length(x)ChannelErrorRate=x(i);sim('project_2');y(i)=MissedFrameNumber(length(MissedFrameNumber))/TotalFrameNumber;endloglog(x,y);仿真结果:没有达到预想的结果,还有待改进。

二.卷积码编码系统建模与仿真:1)卷积码编码系统在二进制对称信道中的性能系统框图:M文件如下:x=[0.01 0.02 0.03 0.04 0.05 0.1 0.15 0.2 0.25 0.3 0.4 0.5];%x表示二进制对称信道的误比特率的各个取值y=x;%y表示卷积编码信号的误码率,它的长度与x的长度相等for i=1:length(x)%对x中的每个元素依次执行仿真BitErrorRate=x(i);%将二进制对称信道的误比特率设置为x的第i个元素的数值sim('project_3');%运行仿真,仿真结果保存在向量DecodedErrorRate中y(i)=mean(DecodedErrorRate);endloglog(x,y);%绘制x和y的对数关系曲线图仿真结果:2)不同译码条件下的性能系统框图:信源模块的系统框图:软判决译码信宿模块的系统框图:软判决模块的系统框图:硬判决译码信宿模块的系统框图:M文件如下:x=-10:5;%x表示信噪比y=x;%y表示信号的误比特率,它的长度与x相同hold off;%准备一个空白图形for index=2:4%重复运行project_juanjima,检验不同条件下软判决译码的性能DecisionBits=index;%软判决的量化电平数for i=1:length(x)%循环执行仿真程序SNR=x(i);%信道的信噪比依次取x中的元素sim('project_juanjima');%运行仿真程序,得到的误比特率保存在工作区变量BitErrorRate中y(i)=mean(BitErrorRate);%计算BitErrorRate的均值作为本次仿真的误比特率endsemilogy(x,y);%绘制x和y的关系曲线图,纵坐标采用对数坐标hold on;%保持已绘图形endfor i=1:length(x)%重复运行project_juanjimahard,检验不同条件下硬判决译码的性能SNR=x(i);sim('project_juanjimahard');y(i)=mean(BitErrorRate);endsemilogy(x,y);仿真结果不同信噪比条件下误比特率关系图:。

simulink建模与仿真流程

simulink建模与仿真流程

simulink建模与仿真流程我们需要在Simulink中创建一个新的模型。

打开Simulink软件后,选择“File”菜单中的“New”选项,然后选择“Model”来创建一个新的模型。

接着,我们可以在模型中添加各种组件,如信号源、传感器、执行器等,以及各种数学运算、逻辑运算和控制算法等。

在建模过程中,我们需要定义模型的输入和输出。

在Simulink中,可以使用信号源模块来定义模型的输入信号,如阶跃信号、正弦信号等。

而模型的输出信号可以通过添加显示模块来实现,如示波器模块、作用域模块等。

接下来,我们需要配置模型的参数。

在Simulink中,可以通过双击组件来打开其参数设置对话框,然后根据需求进行参数配置。

例如,对于控制系统模型,我们可以设置控制器的增益、采样时间等参数。

完成模型的配置后,我们可以进行仿真运行。

在Simulink中,可以选择“Simulation”菜单中的“Run”选项来运行仿真。

在仿真过程中,Simulink会根据模型的输入和参数进行计算,并生成相应的输出结果。

我们可以通过示波器模块来实时显示模型的输出信号,以便进行结果分析和调试。

在仿真过程中,我们可以通过修改模型的参数来进行参数调优。

例如,可以改变控制器的增益值,然后重新运行仿真,观察输出结果的变化。

通过不断调整参数,我们可以优化模型的性能,使其达到设计要求。

除了单一模型的仿真,Simulink还支持多模型的联合仿真。

通过将多个模型进行连接,可以实现系统级的仿真。

例如,我们可以将控制系统模型和物理系统模型进行连接,以实现对整个控制系统的仿真。

在仿真完成后,我们可以对仿真结果进行分析和评估。

Simulink提供了丰富的分析工具,如频谱分析、时域分析和稳定性分析等。

通过对仿真结果的分析,我们可以评估模型的性能,并进行进一步的改进和优化。

Simulink建模与仿真流程包括创建模型、添加组件、定义输入输出、配置参数、运行仿真、参数调优、联合仿真和结果分析等步骤。

实验五 SIMULINK仿真

实验五  SIMULINK仿真

实验五SIMULINK仿真一、实验目的SIMULINK是一个对动态系统(包括连续系统、离散系统和混合系统)进行建模、仿真和综合分析的集成软件包,是MA TLAB的一个附加组件,其特点是模块化操作、易学易用,而且能够使用MATLAB提供的丰富的仿真资源。

在SIMULINK环境中,用户不仅可以观察现实世界中非线性因素和各种随机因素对系统行为的影响,而且也可以在仿真进程中改变感兴趣的参数,实时地观察系统行为的变化。

因此SIMULINK已然成为目前控制工程界的通用软件,而且在许多其他的领域,如通信、信号处理、DSP、电力、金融、生物系统等,也获得重要应用。

对于信息类专业的学生来说,无论是学习专业课程或者相关课程设计还是在今后的工作中,掌握SIMULINK,就等于是有了一把利器。

本次实验的目的就是通过上机训练,掌握利用SIMULINK对一些工程技术问题(例如数字电路)进行建模、仿真和分析的基本方法。

二、实验预备知识1. SIMULINK快速入门在工程实际中,控制系统的结构往往很复杂,如果不借助专用的系统建模软件,则很难准确地把一个控制系统的复杂模型输入计算机,对其进行进一步的分析与仿真。

1990年,Math Works软件公司为MATLAB提供了新的控制系统模型图输入与仿真工具,并命名为SIMULAB,该工具很快就在控制工程界获得了广泛的认可,使得仿真软件进入了模型化图形组态阶段。

但因其名字与当时比较著名的软件SIMULA类似,所以1992年正式将该软件更名为SIMULINK。

SIMULINK的出现,给控制系统分析与设计带来了福音。

顾名思义,该软件的名称表明了该系统的两个主要功能:Simu(仿真)和Link(连接),即该软件可以利用系统提供的各种功能模块并通过信号线连接各个模块从而创建出所需要的控制系统模型,然后利用SIMULINK提供的功能来对系统进行仿真和分析。

⏹SIMULINK的启动首先启动MATLAB,然后在MA TLAB主界面中单击上面的Simulink按钮或在命令窗口中输入simulink命令。

第三章 matlab的simulink建模与仿真

第三章 matlab的simulink建模与仿真

3、其它子系统
可配置子系统,代表用 户定义库中的任意模块, 只能在用户定义库中使用。 函数调用子系统。
for循环
3)在一个仿真时间步长内,simulink可以多次进出一 个子系统。 原子子系统:
1)子系统作为一个“实际”的模块,需顺序连续执行。
2)子系统作为整体进行仿真。
3)子系统中的模块在子系统中被排序执行。
建立原子子系统:
1)先建立一空的原子子系统。
2)先建立子系统,再强制转换成原子子系统。
Edit/block parameters
在enabled subsystem
triggered subsystem
enabled and triggered subsystem中。
1)早期simulink版本中,enable和triggered信号需要从 signal&system中调用。
2)simulink后期版本中,在上述模块中含这两个信号。 3)一个系统中不能含多个enable和triggered信号。 4)其它子系统可看成某种形式的条件执行子系统。
3.4创建simulink模型(简单入门)
一、启用simulink并建立系统模型 启动simulink: (1)用命令方式:simulink (2)
二、simulink模块库简介 1、simulink公共模块库 Continuous(连续系统)
连续信号数值积分 输入信号连续时间积分
单步积分延迟,输出为前一输入
动态模型:描述系统动态变化过程
静态模型:平衡状态下系统特性值之间的关系
二、计算机仿真
1、仿真的概念
以相似性原理、控制理论、信息技术及相关领域 的有关知识为基础,以计算机和各种专用物理设备为工 具,借助系统模型对真实系统进行实验研究的一门综合 性技术。 2、仿真分类 实物仿真:建造实体模型 数学模型:将数学语言编制成计算机程序 半实体模型:数学物理仿真
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

差错控制编码的SIMULINK建模与仿真一.线性分组码编码系统建模
Reed-Solomon码编码系统框图:
信源模块的系统框图:
信宿模块的系统框图:
1.循环冗余码编码系统建模与仿真
CRC-16编码系统框图:
信源模块的系统框图:
信宿模块的系统框图:
信号比较模块系统款图:
M文件如下:
x=[0.00001 0.0001 0.001 0.005 0.01 0.02 0.03 0.04 0.05 0.1 0.2 0.3 0.4 0.5]; y=x;
ProtectedData=48;
FrameInterval=0.010;
BitPeriod=FrameInterval/ProtectedData;
ProtectedDataWithCRC=ProtectedData+16;
FrameLength=480;
SimulationTime=1000;
TotalFrameNumber=SimulationTime/FrameInterval;
for i=1:length(x)
ChannelErrorRate=x(i);
sim('project_2');
y(i)=MissedFrameNumber(length(MissedFrameNumber))/TotalFrameNumber;
end
loglog(x,y);
仿真结果:没有达到预想的结果,还有待改进。

二.卷积码编码系统建模与仿真:
1)卷积码编码系统在二进制对称信道中的性能
系统框图:
M文件如下:
x=[0.01 0.02 0.03 0.04 0.05 0.1 0.15 0.2 0.25 0.3 0.4 0.5];%x表示二进制对称信道的误比特率的各个取值
y=x;%y表示卷积编码信号的误码率,它的长度与x的长度相等
for i=1:length(x)%对x中的每个元素依次执行仿真
BitErrorRate=x(i);%将二进制对称信道的误比特率设置为x的第i个元素的数值sim('project_3');%运行仿真,仿真结果保存在向量DecodedErrorRate中
y(i)=mean(DecodedErrorRate);
end
loglog(x,y);%绘制x和y的对数关系曲线图
仿真结果:
2)不同译码条件下的性能
系统框图:
信源模块的系统框图:
软判决译码信宿模块的系统框图:
软判决模块的系统框图:
硬判决译码信宿模块的系统框图:
M文件如下:
x=-10:5;%x表示信噪比
y=x;%y表示信号的误比特率,它的长度与x相同
hold off;%准备一个空白图形
for index=2:4%重复运行project_juanjima,检验不同条件下软判决译码的性能
DecisionBits=index;%软判决的量化电平数
for i=1:length(x)%循环执行仿真程序
SNR=x(i);%信道的信噪比依次取x中的元素
sim('project_juanjima');%运行仿真程序,得到的误比特率保存在工作区变量BitErrorRate中
y(i)=mean(BitErrorRate);%计算BitErrorRate的均值作为本次仿真的误比特率end
semilogy(x,y);%绘制x和y的关系曲线图,纵坐标采用对数坐标
hold on;%保持已绘图形
end
for i=1:length(x)%重复运行project_juanjimahard,检验不同条件下硬判决译码的性能SNR=x(i);
sim('project_juanjimahard');
y(i)=mean(BitErrorRate);
end
semilogy(x,y);
仿真结果
不同信噪比条件下误比特率关系图:。

相关文档
最新文档