设计报告--008---差错控制编码的SIMULINK建模与仿真
- 格式:doc
- 大小:492.50 KB
- 文档页数:6
基于循环码的差错控制编码系统建模与仿真一、设计目的及要求设计目标:通过利用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与控制系统仿真实验报告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建模与仿真一.线性分组码编码系统建模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软件后,选择“File”菜单中的“New”选项,然后选择“Model”来创建一个新的模型。
接着,我们可以在模型中添加各种组件,如信号源、传感器、执行器等,以及各种数学运算、逻辑运算和控制算法等。
在建模过程中,我们需要定义模型的输入和输出。
在Simulink中,可以使用信号源模块来定义模型的输入信号,如阶跃信号、正弦信号等。
而模型的输出信号可以通过添加显示模块来实现,如示波器模块、作用域模块等。
接下来,我们需要配置模型的参数。
在Simulink中,可以通过双击组件来打开其参数设置对话框,然后根据需求进行参数配置。
例如,对于控制系统模型,我们可以设置控制器的增益、采样时间等参数。
完成模型的配置后,我们可以进行仿真运行。
在Simulink中,可以选择“Simulation”菜单中的“Run”选项来运行仿真。
在仿真过程中,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命令。
Simulink仿真实验报告1. 引言本报告旨在对Simulink仿真实验进行全面、详细、完整且深入地探讨。
Simulink 是一种基于模型的设计和仿真环境,广泛应用于工程领域。
本实验通过使用Simulink进行系统建模和仿真,以验证系统的性能和可行性。
2. 实验目的本实验的主要目的是熟悉Simulink的基本操作和功能,并通过实际案例来了解系统建模和仿真的过程。
具体目标如下: 1. 掌握Simulink的界面和基本操作; 2. 学习如何建立系统模型; 3. 了解如何进行仿真和分析。
3. 实验步骤3.1 Simulink介绍Simulink是一种图形化的建模和仿真环境,可以用于设计和分析各种系统。
它提供了丰富的工具箱和模块,使得系统建模变得更加简单和直观。
3.2 Simulink界面Simulink的界面由多个窗口组成,包括模型窗口、库浏览器、信号浏览器等。
模型窗口是主要的工作区域,用于建立和编辑系统模型。
3.3 系统建模在Simulink中,系统模型由各种模块和连接线组成。
模块可以是数学运算、信号源、控制器等。
通过拖拽和连接这些模块,可以建立系统的结构。
3.4 仿真设置在进行仿真前,需要设置仿真参数,如仿真时间、步长等。
这些参数会影响仿真的准确性和效率。
3.5 仿真分析仿真完成后,可以对系统的性能进行分析。
Simulink提供了丰富的工具和图表,可以用于绘制系统的输出响应、频谱分析等。
4. 实验案例本实验选取了一个简单的控制系统作为案例,用于说明Simulink的应用过程。
4.1 系统描述控制系统包括一个输入信号、一个控制器和一个输出信号。
输入信号经过控制器后,通过输出信号进行输出。
4.2 模型建立在Simulink的模型窗口中,通过拖拽和连接模块,可以建立控制系统的模型。
首先添加输入信号模块,然后添加控制器模块,最后添加输出信号模块。
4.3 仿真设置设置仿真参数,如仿真时间为10秒,步长为0.01秒。
差错控制编码仿真一、实验目的掌握差错控制编码的实现技术以及仿真方法二、实验内容1、设计一个(7,4)汉明码编译码仿真模型2、观察经过并串转换后的(7,4)汉明码输出波形图三、实验原理1、线性分组码的基本概念:线性分组码(n,k)中许用码字(组)为2k个。
定义线性分组码的加法为模2和,乘法为二进制乘法。
即1+1=0、1+0=1、0+1=1、0+0=0;1×1=1、1×0=0、0×0=0、0×1=0。
且码字与码字的运算在各个相应比特位上符合上述二进制加法运算规则。
线性分组码具有如下性质(n,k)的性质:1)封闭性。
任意两个码组的和还是许用的码组。
2)码的最小距离等于非零码的最小码重。
对于码组长度为n、信息码元为k位、监督码元为r=n-k位的分组码,常记作(n,k)码,如果满足2r-1≥n,则有可能构造出纠正一位或一位以上错误的线性码。
下面我们通过(7,4)分组码的例子来说明如何具体构造这种线性码。
设分组码(n,k)中,k = 4,为能纠正一位误码,要求r≥3。
现取r=3,则n=k+r=7。
我们用a0ala2a3a4a5a6表示这7个码元,用S1、S2、S3表示由三个监督方程式计算得到的校正子,并假设三位S1、S2、S3校正子码组与误码位置的对应关系如下表12.2所示。
(7,4)码校正子与误码位置S1=0。
因此有S1=a6⊕a5⊕a4⊕a2,同理有S2=a6⊕a5⊕a3⊕a1和S3=a6⊕a4⊕a3⊕a0。
在编码时a6、a5、a4、a3为信息码元,a2、a1、a0为监督码元。
则监督码元可由以下监督方程唯一确定即由上面方程可得到表12.3所示的16个许用码组。
在接收端收到每个码组后,计算出S1、S2、S3,如果不全为0,则表示存在错误,可以由表12.2确定错误位置并予以纠正。
例如收到码组为0000011,可算出S1S2S3=011,由表12.2可知在a3上有一误码。
【实验名称】Simulink建模与仿真【实验目的】1.学习SIMULINK 软件工具的使用方法;2.用SIMULINK 仿真线性系统;【实验内容】1.SIMULINK简介SIMULINK是MATLAB软件的扩展,它是实现动态系统建模和仿真的一个软件包,它与MATLAB语言的主要区别在于,其与用户交互接口是基于Windows的模型化图形输入,其结果是使得用户可以把更多的精力投入到系统模型的构建,而非语言的编程上。
所谓模型化图形输入是指SIMULINK提供了一些按功能分类的基本的系统模块,用户只需要知道这些模块的输入输出及模块的功能,而不必考察模块内部是如何实现的,通过对这些基本模块的调用,再将它们连接起来就可以构成所需要的系统模型(以.mdl文件进行存取),进而进行仿真与分析。
2.SIMULINK的启动进入SIMULINK界面,只要你在MA TLAB命令窗口提示符下键入‘SIMULINK’,按回车键即可启动SIMULINK软件。
在启动S IMULINK软件之后,SIMULINK的主要方块图库将显示在一个新的Windows中。
如图8-1所示:►在MA TLAB命令窗口中输入simulink :结果是在桌面上出现一个称为Simulink Library Browser的窗口,在这个窗口中列出了按功能分类的各种模块的名称。
图8-1 SIMULINK的主要方块图库3.SIMULINK的模块库介绍►SIMILINK模块库按功能进行分为以下8类子库:Continuous(连续模块)Discrete(离散模块)Function&Tables(函数和平台模块)Math(数学模块)Nonlinear(非线性模块)Signals&Systems(信号和系统模块)Sinks(接收器模块)Sources(输入源模块)4.SIMULINK简单模型的建立(1)建立模型窗口(2)将功能模块由模块库窗口复制到模型窗口(3)对模块进行连接,从而构成需要的系统模型5.SIMULINK功能模块的处理(1)模块库中的模块可以直接用鼠标进行拖曳(选中模块,按住鼠标左键不放)而放到模型窗口中进行处理。
实验四 SIMULINK仿真模型的建立及仿真(一)一、实验目的:1、熟悉SIMULINK模型文件的操作。
2、熟悉SIMULINK建模的有关库及示波器的使用。
3、熟悉Simulink仿真模型的建立。
4、掌握用不同的输入、不同的算法、不同的仿真时间的系统仿真。
二、实验内容:1、设计SIMULINK仿真模型。
2、建立SIMULINK结构图仿真模型。
3、了解各模块参数的设定。
4、了解示波器的使用方法。
5、了解参数、算法、仿真时间的设定方法。
例7.1-1 已知质量m=1kg,阻尼b=2N.s/m。
弹簧系数k=100N/m,且质量块的初始位移x(0)=0.05m,其初始速度x’(0)=0m/s,要求创建该系统的SIMULINK 模型,并进行仿真运行。
步骤:1、打开SIMULINK模块库,在MATLAB工作界面的工具条单击SIMULINK图标,或在MATLAB指令窗口中运行simulink,就可引出如图一所示的SIMULINK模块浏览器。
图一:SIMULINK模块浏览器2、新建模型窗,单击SIMULINK模块库浏览器工具条山的新建图标,引出如图二所示的空白模型窗。
图二:已经复制进库模块的新建模型窗3、从模块库复制所需模块到新建模型窗,分别在模块子库中找到所需模块,然后拖进空白模型窗中,如图二。
4、新建模型窗中的模型再复制:按住Ctrl键,用鼠标“点亮并拖拉”积分模块到适当位置,便完成了积分模块的再复制。
5、模块间信号线的连接,使光标靠近模块输出口;待光标变为“单线十字叉”时,按下鼠标左键;移动十字叉,拖出一根“虚连线”;光标与另一个模块输入口靠近到一定程度,单十字变为双十字;放开鼠标左键,“虚连线”变变为带箭头的信号连线。
如图三所示:图三:已构建完成的新模型窗6、根据理论数学模型设置模块参数:①设置增益模块<Gain>参数,双击模型窗重的增益模块<Gain>,引出如图四所示的参数设置窗,把<Gain>增益栏中默认数字改为2,单击[OK]键,完成设置;图四:参数已经修改为2的<Gain>增益模块设置窗②参照以上方法把<Gain1>增益模块的增益系数改为100;③修改求和模块输入口的代数符号,双击求和模块,引出如图五所示的参数设置窗,把符号栏中的默认符号(++)修改成所需的代数符号(--),单击[OK]键,完成设置;图五:改变输入口符号的求和模块参数设置窗④对积分模块<Integrator1>的初始状态进行设置:双击积分模块<Integrator1>,引出如图六所示的参数设置窗,把初始条件Initial condition 栏中的默认0初始修改为题目给定的0.05,单击[OK]键,完成设置。
实验7 差错控制编码仿真实验7.1 实验目的1. 掌握差错控制编码的基本原理。
2. 掌握线性分组码和循环码的差错控制基本原理和过程。
3. 掌握用MATLAB/Simulink对差错控制编码过程进行建模和分析的方法。
7.2 实验原理通常差错控制技术包括两个主要内容:差错的检查和差错的纠正。
差错检测通常是通过差错控制编码来实现的,而差错纠正是通过差错控制的方法来实现的。
差错控制是指在数据通信过程中能发现或纠正错误,将差错限制在尽可能小的允许范围内。
差错控制的基本思想是在发送端根据要传输的数据序列,按一定的规律加入多余码元,即附加一些监督码元,这些多余的码元与信息码元之间是以某种确定的规则相互关联的,使原来不相关的数据序列变成相关的,即编码。
传输时将多余码元和信息码元一并传送。
接收端根据信息码元和多余码元(监督码元)之间的规则进行检验,即译码,根据译码结果进行错误检测,一旦传输过程中发生错误,信息码元与监督码元之间的关系将受到破坏,从而发现错误乃至纠正错误。
当发现错误时,或者通过反馈信道要求发送方重发有错的数据,或者由接收端的译码器自动将错误纠正。
多余码元为监督码元,根据信息码元产生监督码元的方法叫差错控制编码。
1、线性分组码的编码和译码原理线性分组码的编码和译码原理详见教材11.5节相关内容2、循环码的编码和译码原理循环码码的编码和译码原理详见教材11.6节相关内容7.3 实验内容1、基本要求(1)分别搭建利用线性分组码和循环码进行差错控制的仿真模型(2)改变二进制对称信道参数中的“差错概率”,分别观察两个模型中误码率随“差错概率”参数的变化情况,并记录相关实验数据,得出相应结论。
(3)撤掉线性分组码和循环码的差错控制编译码模块,仿真并观察在没有使用差错控制技术的情况下,误码率随“差错概率”参数的变化情况,与(2)中数据进行对比并记录相关实验数据,得出相应结论。
2、提高部分将基本要求部分两个模型中“差错概率”参数设置成变量,编写相应MATLAB程序,绘制误码率与“差错概率”参数之间关系曲线,并与没有使用差错控制技术的模型进行对比,得出相应结论。
基于Simulink仿真的PCM编码建模与仿真任务报告姓名:专业:学号:第一步:在Matlab的Command Window窗口中输入simulink指令并按下回车键,弹出sinmulink library browser窗口。
第二步:在弹出的窗口Simulink Library Browser中新建一个Model文件,并在查找窗口依次查找相关模块文件并添加到新建Model文件中。
添加到Model文件中的各模块如下图所示:Converter1Gain1第三步:在相应的Constant,Saturation,Abs, Look-up Table, Gain, Quantizer , Relay, Integer to Bit Converter, Display 1中进行相应的参数设置,如下图所示。
1.constant2.saturation3.abs4.look-up table:其中设置参数为13折线压缩。
5.gain6.quantizer7.integer to bit converter8.relay9.display110.mux第四步:参数设置完成后按如下图示用箭头连接。
Display1第五步:点击运行按钮运行该模型,结果如下图所示。
Display1第六步:对部分模块进行备注,得如下图所示。
Display1第七步:模块分析1.Saturation作为限幅器,将输入信号幅度值限制在pcm编码的定义范围内。
2.Relay模块的门限设置为0,其输出即可作为pcm编码输出的最高位——极性码。
3.Look-up Table(查表)模块进行13折线压缩。
4.Gain增益模块将样值范围放大到0~100.5.Quantizer间距为1进行四舍五入取整。
6.Interger to Bit Converter将整数编码为8位二进制序列,作为pcm编码的低8位。
MATLAB/Simulink 电力系统建模与仿真实验报告姓名:******专业:电气工程及其自动化班级:*******************学号:*******************实验一无穷大功率电源供电系统三相短路仿真1.1 无穷大功率电源供电系统仿真模型构建运行MATLAB软件,点击Simulink模型构建,根据电路原理图,添加下列模块:(1)无穷大功率电源模块(Three-phase source)(2)三相并联RLC负荷模块(Three-Phase Parallel RLC Load)(3)三相串联RLC支路模块(Three-Phase Series RLC Branch)(4)三相双绕组变压器模块(Three-Phase Transformer (Two Windings))(5)三相电压电流测量模块(Three-Phase V-I Measurement)(6)三相故障设置模块(Three-Phase Fault)(7)示波器模块(Scope)(8)电力系统图形用户界面(Powergui)按电路原理图连接线路得到仿真图如下:1.2 无穷大功率电源供电系统仿真参数设置1.2.1 电源模块设置三相电压110kV,相角0°,频率50Hz,接线方式为中性点接地的Y形接法,电源电阻0.00529Ω,电源电感0.000140H,参数设置如下图:1.2.2 变压器模块变压器模块参数采用标幺值设置,功率20MVA,频率50Hz,一次测采用Y型连接,一次测电压110kV,二次侧采用Y型连接,二次侧电压11kV,经过标幺值折算后的绕组电阻为0.0033,绕组漏感为0.052,励磁电阻为909.09,励磁电感为106.3,参数设置如下图:1.2.3 输电线路模块根据给定参数计算输电线路参数为:电阻8.5Ω,电感0.064L,参数设置如下图:1.2.4 三相电压电流测量模块此模块将在变压器低压侧测量得到的电压、电流信号转变成Simulink信号,相当于电压、电流互感器的作用,勾选“使用标签(Use a label)”以便于示波器观察波形,设置电压标签“Vabc”,电流标签“Iabc”,参数设置如下图:1.2.5 故障设置模块勾选故障相A、B、C,设置短路电阻0.00001Ω,设置0.02s—0.2s发生短路故障,参数设置如下图:1.2.6 示波器模块为了得到仿真结果准确数值,可将示波器模块的“Data History”栏设置为下图所示:1.3 无穷大功率电源供电系统仿真结果及分析得到以上的电力系统参数后,可以首先计算出在变压器低压母线发生三相短路故障时短路电流周期分量幅值和冲击电流的大小,短路电流周期分量的幅值为Im=10.63kA,时间常数Ta=0.0211s,则短路冲击电流为Iim=17.3kA。
差错控制编码的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);
仿真结果
不同信噪比条件下误比特率关系图:。