频谱扩展 matlab,简单的直接扩展频谱通信系统仿真分析

随着通信技术的迅猛发展,扩展频谱通信技术的优点已经越来越明显并被接受,并在各个领域得到了广泛的应用。同时随着计算机技术和仿真技术的日益发展和应用,如何应用一些方便、友好的软件对通信系统进行直观的模型仿真,并进行仿真结果的观测和分析,已经成为通信工作者的一个迫切技术需求。本文通过对扩展频谱技术的理论及直接扩展频谱系统的构成和工作原理的阐述,利用Matlab和Simulink工具箱以及其他相关的工具箱仿真了一个简单的直接扩展频谱通信系统,并给定仿真条件运行,为相关工作人员进行同类通信系统仿真提供了参考。

1 扩展频谱通信技术 1.1 扩展频谱通信技术理论基础

扩展频谱通信系统是指待传输信息的频谱用某个特定的扩频函数扩展后成为宽频带信号,送入信道中传输,再利用相应手段将其压缩,从而获得传输信息的通信系统。扩频系统必须满足以下两条准则:传输带宽远远大于被传送的原始信息的带宽;传输带宽主要由扩频函数决定,此扩频函数常用的是伪随机编码信号。

(1)扩展频谱技术的理论基础可用香农(C.E.Shannon)信道容量公式:

9c32d15d2af501bf39e491f50bb55f45.png

来描述。该公式表明,在高斯信道中当传输系统的信号噪声功率比S/N下降时,可用增加系统传输带宽W的办法来保持信道容量C不变。对于任意给定的信号噪声功率比,可以用增大传输带宽来获得较低的信息差错率。扩展频谱技术也是应用这一原理,用高速率的扩频码来达到扩展待传输的数字信息带宽的目的。

(2)香农指出:在高斯噪声的干扰下,在限平均功率的信道上,实现有效和可靠通信的最佳信号是具有白噪声统计特性的信号。高斯白噪声信号具有理想的自相关特性,但是产生、加工和复制存在许多技术困难。而一些易产生又便于加工和控制的伪噪声序列的统计特性逼近于高斯白噪声的统计特性,因此用伪随机码扩展待传基带信号频谱的扩展频谱通信系统,优于常规通信体制。

(3)哈尔凯维奇从理论上证明:要克服多径衰落干扰的影响,信道中传输的最佳信号形式也应该是具有白噪声统计特性的信号形式。由于扩频通信中的伪码逼近白噪声的统计特性,所以扩频通信又具有抗多径干扰的能力。

1.2扩展频谱通信系统分类

扩展频谱通信系统按工作方式一般可分为以下几种:

(1)直接序列扩展频谱系统(DS-SS):由待传信息信号与高速率的伪随机码波形相乘后,去直接控制射频信号的某个参量,扩展了传输带宽而得名。

(2)跳频扩频系统(FH-SS):数字信息与二进制伪码序列模二相加后,去离散地控制射频载波振荡器的输出频率,使发射信号的频率随伪码的变化而跳变。 (3)跳时扩频系统(TH-SS):跳时是用伪码序列来启闭信号的发射时刻和持续时间。

(4)混合式:以上三种基本扩频方式中的两种或多种结合起来。

2 DS-SS原理及系统框图

DS-SS系统框图如图1所示。假设:二元直接序列扩频,BPSK调制。BPSK调制信号表示为:

c99afb10b230cc2f592eaea9bd12f7ae.png

d835df4fead237d1dcc39b9b66608dd1.png

假设A=1,φ0(t)=0。用d(u,t)表示数据源{an}经编码后的数字信号,c(u,t)表示扩频码波形,d(u,t)和c(u,t)都是二进制波形。因此发射系统的输出信号s(u,t)表达式为:

5b072a98c53acea3581fb41ffb75cd4d.png

d(u,t)与c(u,t)相互独立。s(u,t)经由天线辐射到空间,在传播过程中受空间各种信号和干扰噪声的污染。

信号进入接收机后进行与发射端相反的变换即可恢复发射端传送的信息,在扩频接收机中,这个反变换就是解扩和解调。一般采用相关解扩,利用:

47508fd20a6f387023212b2cbaa55764.png

实际上c(u,t)是实函数,因此c*(u,t)=c(u,t)。

通常载波解调用相干解调,接收系统中两个乘法器是相关解扩和解调,本地扩频码与发射端同步,延迟锁定环路提供的控制跟踪量作为对信道随机延时的同步跟踪。本地射频压控振荡器输出的信号也是由锁相环路提供的同步跟踪量跟踪。如果接收系统中相关器是理想的(并能滤除二次谐波),且射频滤波器和基带滤波器都是线性的,则整个系统模型也是线性的,即从接收机输入端到基带输出的整个处理过程都是线性的。可以假设其他干扰和噪声为零,通过积分变换等计算后,基带滤波器输出的有用信号为:

f274a0c68eb030bd4bd0062109690c10.png

由此可知,只要基带滤波器无失真地传送数字信息d[u,t-τ(u)],经基带数字检测器处理后,便能恢复出发射端信源传来的信息{an)。

扩频接收机提取有用信号的功能,是充分发挥了伪随机码尖锐的自相关特性而完成的。而各种干扰信号与本地伪码不相关,在处理过程中其能量被扩展到整个扩频带宽内,因此通过基带滤波器的输出很小。

3 系统仿真(Simulink)工具箱简介

Simulink工具箱是Matlab各种工具箱中比较特别的,他是从底层开发的一个完整的仿真环境和图形界面。在这个环境中,用户可以利用鼠标或键盘,完成面向框图系统仿真的全部过程,并且更加直观、快速和准确地达到仿真的目标。Simulink工具箱的另一个优点是他不给出任何新的函数。

Simulink作为面向框图的仿真软件,具有以下功能:

(1)用方框图的绘制代替程序的编写。

(2)仿真的建立和运行是智能化的。

(3)输入输出信号来源形式的多样化。

通常在通信系统仿真模型中使用的工具箱除了Simulink之外,还有一些以Simulink为基础的模块工具箱。最常用的有电力系统(Powersys)模块工具箱,数字信号处理(DSP Blocks)模块工具箱,定点处理(Fix-PointBlocks)模块工具箱和通信系统(Comm)模块工具箱。

电力系统(Powersys)模块工具箱提供了电力传输和拖动中用到的各种子系统模型,他包含电源、元件、电机、电力电子、测量、联接及其他。

数字信号处理(DSP Blocks)模块工具箱,包括信号源库、信号漏(终端库)、通用DSP库、数学函数库、滤波器库、频谱分析库及演示库。

定点处理(Fix-Point Blocks)模块工具箱主要是为分析计算机字长有限对处理信号造成的影响而提供的各种Simulink模块,包括定点的算术运算、定点的逻辑运算、定点的变换运算、定点数的传送和定点数的联接。

通信系统(Comm)模块工具箱主要包括信号源和信号终端库、信源编码和信源解码库、纠错编码和纠错解码库、调制和解调库、多路存取库、发送滤波和接收滤波库以及信道库等。 通过使用Simulink工具箱以及以他为基础的其他工具箱可以很容易地建立起一个直观的通信系统模型。第一阶段是用图形方式来画结构图并进行编辑;第二阶段是进行运算仿真。在第一阶段中首先要进行环节库框图的建立,从各种库中查找到需要的图标后进行排列;然后把各环节的端口按框图连接起来;最后进行环节参数的设定。要注意在系统输入端加上信号源,在用户关心的输出端加上信号终端(即观测或记录信号的设备,如示波器、电压表或文件等)。这样一个通信系统就确定了,接下来可以进行仿真、确定系统的性能指标及方案比较。

4系统的Simulink仿真

利用Simulink仿真的简单直扩系统模型如图2所示。

5d26a8b6de912cc7a328ecf18a0f2caa.png

信源:采用Random Integer Generator产生,该整数发生器产生随机的二进制随机信号作为扩频通信系统的信源。

扩频与解扩:采用PN序列发生器(PN Sequence Generator)产生伪随机码与信源相乘后进行频谱扩展,在接收端用该序列与解调后的信号相乘完成解扩。

极性转换:为了扩频信源和伪随机码都必须经过由单极性变为双极性,为了便于调制需要再进行一次变换,变为单极性信号;在接收端,为了便于解扩,在解调后需要由单极性信号变换成双极性信号,而为了便于显示需要再进行一次极性变换,由双极性还原为单极性信号后进行显示。

调制与解调:采用BPSK调制与相干解调法。可以使用BPSK Modulator Baseband模块PSK DemodulatorBaseband模块直接进行仿真,也可以使用一个Sine Wave产生的载波与扩频后的信号相乘,再经过一个Zero-Order Hold实现调制;同时在接收端使用一个Zero-OrderHold后用与发射端相同频率幅度相位的Sine Wave载波与之相乘实现解调。

信道:采用AWGN Channel模块仿真一个加性高斯白噪声信道,该信道的信噪比(Es/No)可以进行设置,该仿真程序中设置为10 dB。

结果显示:可以加入示波器(Scope)和误码仪(ErrorRate Calculaon)进行发送和接收端波形的比较输出,以及信号经过扩频、调制、解扩、解调后的错误率计算。将示波器坐标数设置为3,即可同时显示原信号源波形、接收端波形以及两者通过关系运算模块比较后的结果。

仿真程序的运行:对各个模块进行参数配置后,可以运行该仿真程序。注意参数设置中模块的对称性及频率一致。

运行结果如图3所示。

c3ae210eca20d3b58cfbabbb5963703c.png

图3(a)显示为信源的波形,图3(c)显示为接收端最后得到的信号波形,图3(b)显示为发送和接收端的信号经过关系运算后比较的结果。由示波器显示结果可知,该模型能正确的实现直接序列扩频通信系统的功能,得到良好的仿真效果。

5结语

在对直接序列扩展频谱通信系统工作原理的介绍及Simulink工具箱功能和特点的介绍的基础上,建立起一个DS-SS通信系统的仿真模型,并得到了较好的运行结果。证明了Simulink在通信系统仿真中的实用性,并为扩展频谱通信系统的进一步研究提供了一个快捷灵活的平台,为建模提供了经验积累。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/572440.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

matlab保存格式可以用cad打开文件,怎么将TXT文件导入CAD中生成图形

我们可以先把TXT文件转换成WORD或是EXCEL表格里。然后再把转换后的WORD或是EXCEL表格导入到CAD图纸中。这里以迅捷CAD编辑器为例,演示如下:步骤一:还是需要在电脑桌面上安装迅捷CAD编辑器。并进入到软件的操作界面。步骤二:双击打…

[Hnoi2006]马步距离

1285: [Hnoi2006]马步距离 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 36 Solved: 16[Submit][Status][Web Board]Description 在国际象棋和中国象棋中,马的移动规则相同,都是走“日”字,我们将这种移动方式称为马步移动。如右图所示&…

php scrscriptipt,XSS挑战之旅闯关笔记

环境自己搭建~~好嚣张:1.http://127.0.0.1:8024/xss/level1.php?nametest 这是URL 看到后面name有参数传递,不多想直接尝试xss。没有任何过滤。payload :http://127.0.0.1:8024/xss/level1.php?name2.http://127.0.0.1:8024/xss/level2.ph…

matlab图像信息熵交叉熵,【机器学习】信息量,信息熵,交叉熵,KL散度和互信息(信息增益)...

首先先强烈推荐一篇外文博客Visual Information Theory这个博客的博主colah是个著名的计算机知识科普达人,以前很是著名的那篇LSTM讲解的文章也是他写的。这篇文章详细讲解了信息论中许多基本概念的前因后果,并且很是的直观用了大量的图片,和…

第2章第1讲数据类型及常量变量

#include"stdio.h"main() {printf("I love music!\n");printf("the music is \"D:\\music\\love.mp3\".\n");} #include "stdio.h" #define PI 3.14 //符号常量 main() {float r,area; …

数据结构有哪些

概念: 数据结构 : 数据用什么样的方式组合在一起。 数据结构是计算机存储数据的方式,指相互之间存在一种或多种特定关系的数据元素集合 常见数据结构: 数据存储的常用结构有:栈、队列、数组、链表和红黑树。 栈: stack…

php 关于日期的知识总结

1.UNIX时间戳 time() echo time(); 2.UNIX时间戳转换为日期用函数: date() 一般形式:date(Y-m-d H:i:s, 1156219870); 即 echo date(date(Y-m-d H:i:s, time())); 或 $showtime date(Y-m-d H:i:s,time()); 显示结果: 3.日期转换为UNIX时间…

php template strring,PHP字符串函数

<?php $str "THIS is a beautiful world!";//$newstr strstr($str,"is"); //区分大小写的//stristr 表示 $str里面第一次出现"is"的位置和之后的字符串//$newstr stristr($str,"is"); //不区分大小写$newstr stristr($str,&…

Java Calendar 类的时间操作

Java Calendar 类时间操作&#xff0c;这也许是创建和管理日历最简单的一个方案&#xff0c;示范代码很简单。 演示了获取时间&#xff0c;日期时间的累加和累减&#xff0c;以及比较。 原文地址&#xff1a;blog.csdn.NET/joyous/article/details/9630893 注意事项&#xff1a…

Java的异常入门

概念&#xff1a; 异常就是程序出现了不正常的情况&#xff0c;会导致JVM非正常停止&#xff0c;语法错误不算异常体系中 异常体系&#xff1a; 编译时异常&运行时异常&#xff1a; 虚拟机默认处理方式&#xff1a; 代码中出现异常&#xff0c;程序会先判断有没有处理异常的…

Java——多线程使用详解

多线程&#xff1a; 多线程就是同时执行多个应用程序&#xff0c;需要硬件的支持同时执行&#xff1a;不是某个时间段同时&#xff0c;cpu切换的比较快&#xff0c;所有用户会感觉是在同时运行 并发与并行&#xff1a; 并行(parallel)&#xff1a;指在同一时刻&#xff0c;有多…

php边框的颜色 怎么设置,网页中table表格如何修改边框颜色

table表格是网页制作中以前较常使用的一种布局方式&#xff0c;但随着DIVCSS的兴起&#xff0c;table表格已辉煌不在。但它在我们制作网页中也是时有用到。table表格也可以使用DIV一样随意的设置它的边框颜色。下面介绍一下二种方法。方法一&#xff1a;使用CSS代码控制边框颜色…

看懂线程安全

目录&#xff1a; 线程安全线程同步同步代码块同步方法Lock锁线程状态图sleep睡眠等待和唤醒 1. 线程安全 如果有多个线程在同时运行&#xff0c;而这些线程可能会同时运行这段代码。程序每次运行结果和单线程运行的结果是一样 的&#xff0c;而且其他的变量的值也和预期的是…

oracle数据库生产,从安装系统到oracle数据库生产环境(centos6.8)搭建

大纲服务器安装JDK配置Oracle数据库安装配置1.安装服务器服务器的安装参考这篇教程关于安装中可能出现的几个问题&#xff0c;在这里进行解决&#xff1a;1、使用u盘安装完后&#xff0c;系统进入GRUB引导&#xff0c;无法启动&#xff1a;解决办法&#xff1a;出现上述状况的原…

详解线程池

概念&#xff1a; 什么是线程池: 线程池是用来存储多线程的容器&#xff0c;是一种处理形式&#xff0c;处理过程中将任务添加到队列&#xff0c;然后在创建线程后自动启动这些任务。 线程池使用和不使用的区别&#xff1a; 因为系统创建线程池的成本很高&#xff0c;会涉及到…

oracle 10g express linux,在Ubuntu下安装Oracle Database 10g Express Edition

Oracle 10g有一款XE版&#xff0c;意为体验版&#xff0c;限制是不支持多CPU和数据库大小不能超过2G(还有其他的什么&#xff0c;不记得了&#xff0c;Oracle官方网站有写)。对于开发的时候调试一下&#xff0c;体验一下还是够用的。关键大小比较适中&#xff0c;安装包200多M。…

oracle硬盘亮黄灯,RH2288H V3服务器硬盘亮黄灯故障处理案例

原标题&#xff1a;RH2288H V3服务器硬盘亮黄灯故障处理案例本文广州诚本将分享RH2288H V3服务器硬盘亮黄灯故障处理案例&#xff0c;希望对大家的工作有所帮助。问题描述某客户新开局的项目&#xff0c;采购一批RH2288H V3的服务器&#xff0c;做RAID时发现其中一台服务器一块…

彻底学会IO流

概述&#xff1a; IO流就是用来处理设备间数据传输问题的.常见的应用: 文件复制; 文件上传; 文件下载IO的数据传输&#xff0c;可以看做是一种数据的流动&#xff0c;按照流动的方向&#xff0c;已内存为参照物&#xff0c;进行读写操作IO可以保存到文件&#xff0c;其实就是内…

一些芯片资料

74hc14d u10 u11 u12 六反相触发器 74HC244 三态八缓冲器 u15 u13 uln2003afwg u16 74HC07 u17 L298N 步进电机驱动芯片 MOS管认知 转载于:https://www.cnblogs.com/legion/p/6908434.html

DP Intro - Tree DP Examples

因为上次比赛sb地把一道树形dp当费用流做了&#xff0c;受了点刺激&#xff0c;用一天时间稍微搞一下树形DP&#xff0c;今后再好好搞一下&#xff09; 基于背包原理的树形DP poj 1947 Rebuilding Roads 题意&#xff1a;给你一棵树,让你求最少剪掉多少条边可以剪出一棵点数为m…