模拟信号的数字化传输系统设计.docx
- 文档编号:27482506
- 上传时间:2023-07-02
- 格式:DOCX
- 页数:23
- 大小:334.01KB
模拟信号的数字化传输系统设计.docx
《模拟信号的数字化传输系统设计.docx》由会员分享,可在线阅读,更多相关《模拟信号的数字化传输系统设计.docx(23页珍藏版)》请在冰豆网上搜索。
模拟信号的数字化传输系统设计
模拟信号的数字化传输系统设计
摘要
本设计结合PCM的抽样、量化、编码原理,利用MATLAB软件编程和绘图功能,完成了对脉冲编码调制(PCM)系统的建模与仿真分析。
课题中主要分为三部分对脉冲编码调制(PCM)系统原理进行建模与仿真分析,分别为采样、量化和编码原理的建模仿真。
通过对脉冲编码调制(PCM)系统原理的仿真分析,设计者对PCM原理及性能有了更深刻的认识,并进一步掌握MATLAB软件的使用。
第一章绪论
数字通信系统由于具有许多优点而成为当今通信的发展方向。
然而日常生活中大部分信号都是模拟信号。
相对于模拟通信来说,数字通信有抗干扰能力强、保密性好、可以再生、没有噪声积累等优势。
但是,现实生活中有很多模拟新源,模拟信源输出的信号是模拟信号,要将其在数字通信系统中进行传输,则必须经过相应的处理。
研究模拟信号的数字化传输有着极其重要的意义。
在1937年,英国人里费(A.H.Reeves)提出了脉冲编码调制(PCM)方式。
从此揭开了近代数字传输的序幕。
PCM系统的优点是:
抗干扰性强;失真小;传输特性稳定,远距离再生中继时噪声不累积,而且可以采用有效编码、纠错编码和保密编码来提高通信系统的有效性、可靠性和保密性。
另外,由于PCM可以把各种消息(声音、图像、数据等等)都变换成数字信号进行传输,因此可以实现传输和交换一体化的综合通信方式,而且还可以实现数据传输与数据处理一体化的综合信息处理。
故它能较好地适应信息化社会对通信的要求。
PCM的缺点是传输带宽宽、系统较复杂。
但是,随着数字技术的飞跃发展这些缺点也不重要。
因此,PCM是一种极有发展前途的通信方式。
第二章MATLAB简介
2.1MATLAB软件简介
MATLAB和Mathematica、Maple并称为三大数学软件。
它在数学类科技应用软件中在数值计算方面首屈一指。
MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。
MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且mathwork也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。
在新的版本中也加入了对C,FORTRAN,C++,JAVA的支持。
可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。
MATLAB的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。
附加的工具箱(单独提供的专用MATLAB函数集)扩展了MATLAB环境,以解决这些应用领域内特定类型的问题。
其具有以下特点:
友好的工作平台和编程环境;简单易用的程序语言;强大的科学计算机数据处理能力;出色的图形处理功能;应用广泛的模块集合工具箱;实用的程序接口和发布平台;应用软件开发(包括用户界面)。
2.2MATLAB程序设计方法
MATLAB有两种工作方式:
一种是交互式的命令行工作方式;另一种是M文件的程序工作方式。
在前一种工作方式下,MATLAB被当做一种高级数学演算纸和图形表现器来使用,MATLAB提供了一套完整的而易于使用的编程语言,为用户提供了二次开发的工具,下面主要介绍MATLAB控制语句和程序设计的基本方法。
用MATLAB语言编写的程序,称为M文件。
M文件有两类:
命令文件和函数文件。
两者区别在于:
命令文件没有输入参数,也不返回输出参数;而函数文件可以输入参数,也可以返回输出参数。
命令文件对MATLAB工作空间的变量进行操作,而且函数文件中定义的变量为局部变量,当函数文件执行完毕时,这些变量被清除。
M文件可以使用任何编辑程序建立和编辑,而一般常用的是使用MATLAB提供的M文件窗口。
首先从MATLAB命令窗口的File菜单中选择New菜单项,在选择M-file命令,将得到的M文件窗口。
在M文件窗口输入M文件的内容,输入完毕后,选择此窗口File菜单的saveas命令,将会得到saveas对话框。
在对话框的File框中输入文件名,再选择OK按钮即完成新的M文件的建立。
然后在从MATLAB命令窗口的File菜单中选择Open对话框,则屏幕出现Open对话框,在Open对话框中的FileName框中输入文件名,或从右边的directories框中打开这个M文件。
在M文件所在的目录,再从FileName下面的列表框中选中这个文件,然后按OK按钮即打开这个M文件。
在M文件窗口可以对打开的M文件进行编辑修改。
在编辑完成后,选择File菜单中的Save命令可以把这个编辑过的M文件报存下来。
当用户要运行的命令较多或需要反复运行多条命令时,直接从键盘逐渐输入命令显得比较麻烦,而命令文件则可以较好地解决这一问题。
我们可以将需要运行的命令编辑到一个命令文件中,然后再MATLAB命令窗口输入该命令文件的名字,就会顺序执行命令文件中的命令。
第三章模拟信号的数字化传输原理
3.1总体模型
如图所示,时域连续信号v(t)经过相乘器与抽样信号P(t)相乘得到时域离散信号k(t),再经过量化器得到幅值离散信号m(t),最后通过编码器得到适合传输的二进制信号即数字信号d(t)。
图3-1模拟信号的数字化传输模型
3.2模拟信号的抽样及频谱分析
3.2.1信号的抽样
离散时间信号通常是对连续时间信号按照一定的时间间隔抽样得到的。
完成抽样功能的器件称为抽样器,下图所示为抽样器的示意图。
图3―2是一个抽样概念示意图,假设一个模拟信号f(t)通过一个开关,则开关的输出与开关的状态有关,当开关处于闭合状态,开关的输出就是输入,即y(t)=f(t),若开关处在断开位置,输出y(t)就为零。
图3―2抽样概念示意图
可见,如果让开关受一个窄脉冲串(序列)的控制,则脉冲出现时开关闭合,则脉冲消失时开关断开,此输出y(t)就是一个幅值变化的脉冲串(序列),每个脉冲的幅值就是该脉冲出现时刻输入信号f(t)的瞬时值,因此,y(t)就是对f(t)抽样后的信号或称样值信号。
3.2.2抽样定理
模拟信号进行抽样会丢失信号的部分信息,要无失真地还原原始信号抽样必须满足抽样定理(也称为奈奎斯特-香农采样定理)。
抽样定理:
如果信号是带限的,即信号的频谱存在最高的频率ωm,并且采样频率ωs大于信号带宽的一倍(ωs>2ωm),那么原来的连续信号可以从采样样本中完全重建。
抽样定理是信息论、通讯、信号处理等学科中的一个重要的基本结论。
设Xa(t)是连续时间信号,Xa(t)的傅立叶变换为:
(3.1)
设p(t)为周期冲激脉冲信号,Ts为采样周期,
(3.2)
以
表示采样输出,则:
(3.3)
根据傅立叶变换性质,采样信号
的傅立叶变换为
(3.4)
其中P(jΩ)为
的傅立叶变换,因此,
(3.5)
从(2.5)式我们又可得到
(3.6)
采样信号
的傅立叶变换的另一种表示形式为
(3.7)
由此可见,采样信号xp(t)的频谱Xp(jω)是原信号频谱X(jω)的周期延拓,每个周期的强度是原信号的1/Ts。
如果x(t)是一个带限信号,频率范围为−ωm≤ω≤ωm,那么当ωs>2ωm,周期延拓的频谱将不会发生混叠。
这时只要将采样信号xp(t)输入一个理想低通滤波器,其增益为Ts,截止频率满足ωm≤ωc<ωs−ωm,滤除n=0以外的高频成分,就可以完全重建原信号。
而如果不满足ωs>2ωm的条件,Xp(jω)会发生频谱混叠现象,导致重建信号的失真。
图3―3频谱重叠示意图
如图以信号x(t)=cos(20πt)为例,信号的最高频率为10Hz,我们分别用15Hz、20Hz和60Hz的采样频率对其进行采样,所得的离散时间序列和相应的频谱如图3-3所示。
图3-4x(t)=cos(20πt)时域与频谱
当采样频率fs=15Hz时为欠采样,此时发生的频谱混叠现象可以从图3-3中看出。
如果不能从频谱中不失真的分离出原信号的频谱,则无法从信号的样值序列中恢复原信号。
3.3信号的量化
3.3.1量化的概念
量化,就是把抽样信号的取值离散化, 将无限个可能的抽样值(不是指抽样点的个数,而是每个抽样点的可能取值)变成有限个可能取值。
因此量化信号会造成信息损失,称之为量化误差。
量化是将幅度域连续取值的信号在幅度域上划分为若干个分层,在每一个分层范围内的信号值用“四舍五入”的办法取某一个固定的值来表示。
量化器
Xy
模拟值量化值
图3-5量化器
3.3.2均匀量化
把输入信号的取值域按等距离分割的量化称为均匀量化。
均匀量化的量化间隔Δi取决于输入信号的变化范围和量化电平数。
若设输入信号的最小值和最大值分别用a和b表示,量化电平数为M,则均匀量化时的量化间隔为:
Δi=(b-a)/M。
量化电平取在量化间隔的中点,量化器输出为
如图3-5所示,q1~q6为量化级,将信号幅值区域分为5层。
m1~m5为信号量化值,是信号确定量化后的取值。
M个抽样值区间是等间隔划分的,称为均匀量化。
M个抽样值区间也可以不均匀划分,称为非均匀量化。
图3-6信号实际值与量化值
3.3.3非均匀量化
所谓非均匀量化就是对信号的不同部分用不同的量化间隔,具体地说,就是对小信号部分采用较小的量化间隔,而对大信号部分就用较大的量化间隔。
非均匀量化的特点是:
信号幅度小时,量化间隔小其量化误差也小;
信号幅度大时,量化间隔大,其量化误差也大。
采用非均匀量化可以改善小信号的量化信噪比,可以做到在不增大量化级数N的条件下,使信号在较宽的动态范围内的信号量化噪声比(S/Nq)dB达到指标的要求。
在抽样电路后面加上一个叫做压缩器的信号处理电路,该电路的特点是对弱小信号有比较大的放大倍数(增益),而对大信号的增益却比较小。
抽样后的信号经过压缩器后就发生了“畸变”,大信号部分没有得到多少增益,而弱小信号部分却得到了“不正常”的放大(提升),相比之下,大信号好像被压缩了,压缩器由此得名。
对压缩后的信号再进行均匀量化,就相当于对抽样信号进行了非均匀量化。
均匀量化
编码
解码
f(x)瞬时扩张
f(x)瞬时压缩
xzyy
图3-7非均匀量化
在收信端为了恢复原始抽样信号,就必须把接收到的经过压缩后的信号还原成压缩前的信号,完成这个还原工作的电路就是扩张器,它的特性正好与压缩器相反,对小信号压缩,对大信号提升。
为了保证信号的不失真,要求压缩特性与扩张特性合成后是一条直线,也就是说,信号通过压缩再通过扩张实际上好像通过了一个线性电路。
广泛采用的两种对数压缩律是
压缩律和A压缩律。
美国采用
压缩律,我国和欧洲各国均采用A压缩律,因此,PCM编码方式采用的也是A压缩律。
所谓A压缩律也就是压缩器具有如下特性的压缩律:
式中,x为压缩器归一化输入电压,规格化成-1≤x≤1;y为压缩器归一化输出电压;A为常数,确定压缩量的参数,它反映最大量化间隔和最小量化间隔之比。
A压缩律中的常数A不同,则压缩曲线的形状也不同,它将特别影响小电压时的信号量噪比的大小,在实用中,选择A等于87.6。
A律压缩律表示式是一条连续的平滑曲线,用电子线路很难准确的实现。
由于A律压缩实现复杂,常使用13折线法编码,压扩特性图如下图所示
图3-8A律函数13折线压扩特性图
图中横坐标x在0~1区间中分为不均匀的8段。
~1间的线段称为第8段;
~
间的线段称为第7段;
~
间的线段称为第6段;依此类推,直到0~
间的线段称为第1段。
图中纵坐标y则均匀的划分为8段。
将这8段相应的坐标点(x,y)相连,就得到了一条折线。
由图可见,除第1和2段外,其他各段折线的斜率都不相同。
在下表中列出了这些斜率:
μ律特性输出y与输入信号x之间满足下式:
式中,y为归一化输出电压;x为输入信号幅度,规格化成-1≤x≤1;μ为确定压缩量的参数,它反映最大量化间隔和最小量化间隔之比,取100≤u≤500。
具体计算时,用μ=255,把对数曲线变成8条折线以简化计算过程。
A律与μ律的特性曲线见图3―8。
A律与μ律的性能基本相似,在μ=255,量化级为256时,μ律对小信号信噪比的改善优于A律。
图3―8的曲线只是压缩特性的一半,另一半在第三象限,与第一象限的曲线奇对称,为简单计,一般都不画出来。
图3―9两种对数压缩特性示意图
对于A律曲线,采用13段折线近似;对于μ律曲线,采用15段折线近似。
图3-10μ律函数15折线压扩特性图
3.4信号的编码
编码,就是用一组二进制码组来表示每一个有固定电平的量化值。
编码就是把量化后的信号变换成代码,其相反的过程称为译码。
然而,实际上量化是在编码过程中同时完成的,故编码过程也称为模/数变换,可记作A/D。
理论上,任何一种从量化电平值到二进制码组的一一映射都可以作为一种编码。
用的码组长度越长,码组个数就越多,可表示的状态就越多,则量化级数就可以增加,量化间隔随之减小,量化噪声也随之减小。
但码组长度越长,对电路的精度要求也越高,同时,要求码元速率(波特率)越高,从而要求信道带宽越宽。
对于A律量化来说,量化级数为256,则一个码组的长度就是8位。
目前常用的编码主要有:
折叠码、自然码、格雷码。
表3―1三种常用二进制码组
自然二进码用(an,an-1,…a1)表示,每个码元只有二种状态,取“1”或“0”,一组自然二进码代表的量化电平为
Q=an2n-1+an-12n-2+…+a120
式中n为二进码位数。
格雷码(反射二进码)的特点是相邻两组代码间的码距为1,由于因电平误差造成错判到相邻量化区间的概率最大,这种编码使之造成一个比特误码的概率最大。
折叠二进码用(Cn,Cn-1,…,C1)表示,它可由自然二进码变换而得。
在现有的编码方法中,若按编码的速度来分,大致可分为两大类:
低速编码和高速编码。
通信中一般都采用第二类。
编码器的种类大体上可以归结为三类:
逐次比较型、折叠级联型、混合型。
在逐次比较型编码方式中,无论采用几位码,一般均按极性码、段落码、段内码的顺序排列。
在13折线法中采用的折叠码有8位。
其中第一位C1表示量化值的极性正负。
后面的7位分为段落码和段内码两部分,用于表示量化值的绝对值。
其中第2~4位(C2~C4)是段落码,共计3位,可以表示8种斜率的段落;其他4位(C5~C8)为段内码,可以表示每一段落内的16种量化电平。
段内码代表的16个量化电平是均匀划分的。
所以,这7位码总共能表示128种量化值。
段落码和8个段落之间的关系如表3-2所示;段内码与16个量化级之间的关系见表3-3所示。
表3-2段落码表3-3段内码
段落序号
段落码
量化级
段内码
8
111
15
1111
14
1110
7
110
13
1101
12
1100
6
101
11
1011
10
1010
5
100
9
1001
8
1000
4
011
7
0111
6
0110
3
010
5
0101
4
0100
2
001
3
0011
2
0010
1
000
1
0001
0
0000
第四章程序设计
4.1MATLABGUI的介绍与设计
4.1.1图形用户界面的设计原则
一.使用图形用户界面主要是为了达到以下目的:
(1)编写一个需多次反复使用的实用函数,菜单!
按钮!
文本框作为输入方法具有意义.
(2)编写函数或开发应用程序供别人使用.
(3)创建一个过程!
技术或分析方法的交互式示例.
二.为了实现这一目的,一个优良的图形用户界面应具备以下特性:
(1)可使用性:
包括以下几点:
使用的简单性!
用户界面中的术语标准化和一致性!
拥有帮助功能!
快速的系统响应和较低的系统成本!
用户界面应具有容错能力.
(2)灵活性:
包括以下几点:
算法的可隐可显性!
用户可以根据需要制定和修改界面方式!
能够按照用户的希望和需要,提供不同详细程度的系统响应信息!
与其它软件系统应有标准的界面.
(3)复杂性和可靠性:
界面的复杂性指的是用户界面的规模和组织的复杂程度.在完成预定功能的前提下,应使用户界面越简单越好.但不是把所有功能和界面安排成线性序列就一定简单.用户界面的可靠性是指无故障使用的间隔时间.用户界面应能保证用户正确!
可靠地使用系统,保证有关程序和数据的安全性.
4.2图形用户界面设计过程
4.2.1界面设计初步规划
设计一个应用程序界面时,应该先对整个系统界面进行初步规划.考虑应该使用单文档还是多文档样式?
需要多少不同的窗体?
菜单中将包含什么命令?
要不要使用工具栏重复菜单的功能?
提供什么对话框与用户交互?
需要提供什么样的帮助?
界面设计也需要考虑应用程序的目的是什么!
预期的用户是谁等问题.经常使用的应用程序和偶尔使用的辅助程序要区别对待,用来显示信息的应用程序与用来收集信息的应用程序也应有所不同.目标是针对初学者的应用程序,界面设计要求简单明了,而针对有经验用户却可以复杂一些。
4.2.2设计MATLAB的GUI
在MATLAB中提供了图形用户界面设计向导,利用该向导,用户可以非常方便和快捷地设计一个图形用户界面,如同在一张纸上绘图.可以把图形界面的外观,包括所有的按钮以及图形的位置确定下来,然后就可以利用MATLAB的回调程序编辑器来编写其函数代码,从而可以使该图形界面完成预定的任务.MATLAB中的图形用户界面设计向导包括以下5个工具:
(1)对象设计编辑器(LayoutEditor):
提供了9种不同的图形控制对象和一个坐标轴对象,可以使用户按照自己的需要在图形上非常方便地添加和删除图形控制对象
(2)菜单编辑器(MenuEditor):
可创建!
设置!
修改下拉式菜单和内容式菜单
(3)对象属性编辑器(PropertyEditor):
可查看每个对象的属性值,也可修改!
设置对象的属性值
(4)位置调整工具(AlignmentTool):
用来调整图形窗口中各个图形对象的位置的工具
(5)对象浏览编辑器(ObjectBrowser):
可观察当前设计阶段的各个句柄图形对象
4.2.3创建菜单
菜单项的设置可以通过uimenu函数来完成,该函数的调用格式为:
menuhandle=uimenu(windowshandle,PropertyName1,PropertyValue1,……)其中,windowshandle是创建的菜单所在的图形窗口的句柄值或者子菜单所属的主菜单的句柄值;PropertyName1是菜单的某个属性的属性名,PropertyValue1是与菜单属性名相对应的属性值.uimenu函数最基本的属性包括:
菜单名称Label,回调函数Callback,使能状态enable等.利用GUI设计工具也可创建菜单:
首先输入Guide打开对象设计编辑器,然后选择Layout菜单下的MenuEditor子菜单,就可以打开菜单编辑器.利用菜单编辑器创建菜单更加方便灵活[4]。
4.2.4控件的设计
在绝大多数的图形用户界面中都包含控件.控件是图形对象,它与菜单一起用于建立图形用户界面.通过使用各种类型的控件,可以建立起操作简便,功能强大的图形用户界面.MATLAB提供了10种控件对象:
复选框(Checkboxes)!
可编辑文本框(Editabletext)!
框架(Frames)!
列表框(Listboxes)!
弹出式菜单(Pop-upmenus)!
命令按钮(Pushbuttons)!
单选按钮(Radiobuttons)!
滑标(Sliders)!
静态文本框(Statictext)!
开关按钮(Togglebuttons).与菜单对象一样,可以通过命令行方式与GUI设计工具两种方式来建立控件.在命令行方式下,可以通过函数uicontrol来建立控件对象.该函数的调用格式为:
controlhandle=uimenu(.PropertyName1.,PropertyValue1,,)其中,controlhandle是创建的控件对象的句柄值;PropertyName1是控件的某个属性的属性名,PropertyValue1是与属性名相对应的属性值.利用controlhandle函数的Style属性可以创建上述10种控件中任意一种.利用GUI设计工具也可创建控件:
首先输入Guide打开对象设计编辑器,然后利用向导控制面板可以方便地创建任何一种控件,而且通过对象属性查看器可以方便地修改!
设置创建的控件的属性值.
4.2.5对象属性编辑器
在GUI设计向导控制面板中按下PropertyEditor按钮可打开对象属性编辑器.对象属性编辑器的界面分为2个部分:
上部是图形对象列表.它列出了所有根对象下的子对象.包括每个图形窗口对象以及窗口对象中的各控件对象.用户可以在此选择自己所需要设置的图形对象.下部的是图形对象的属性列表.这里列出了用户所选中的图形对象的所有属性名称以及属性的值.当用户选中一个属性,则在两个文本框中会分别显示出属性的名称和当前的属性值.可以利用此对其属性的修改.
4.2.6回调函数的编写
回调程序编辑器的打开有如下方法:
(1)在GUI设计向导控制面板中按下CallbackEditor按钮.
(2)在图形窗口中的Tools菜单下选择CallbackEditor选项.
一个GUI应用软件的实现,最终是要通过对控件对象的操作来完成,而这些操作必定是通过MATLAB中函数代码的执行来完成的.函数代码的编制既可以通过编写回调函数完成,然后在编写时可以把该控件的函数代码直接书写在/CallBack0中;也可以把函数代码放在一个自定义的.M文件中,而在0CallBack0中只将其文件名写上.在编写回调函数时,handles是一个特别有用的结构数组,它以图形窗口中的所有对象的Tag值为域,存储着所有图形对象的句柄,通过handles可以方便地进行数据调用.再利用所有对象都具有的UserData属性来进行数据存储!
传递,编写一个完美的回调函数就是一件轻而易举的事了。
4.3图形用户界面具体设计
模拟信号的数字化传输设计需要“抽样”“量化”“编码”“译码”四个控件,因此在GUI设计向导控制面板添加4个命令按钮(Pushbuttons);还需要输入模拟信号及抽样频率,再添加两个可编辑文本框(Editabletext);最后添加3个静态文本框(Statictext)“模拟信号的数字化传输系统”“输入模拟信号”“输入抽样频率”。
对上述控件更改Tag值及String值,对齐排版后,如图所示
4.4程序设计步骤
4.4.1抽样
以
为例,进行抽样。
函数最大频率2,抽样频率应大于等于4;以fs=10Hz进行抽样如图所示
4.4.2量化
本设计采用A律13折线量化。
输入抽样信号,归一化后判断在0~1区间中不均匀的8段中属于哪一段,并进行赋值。
上例
函数量化值如图所示
4.4.3编码
信号量化后变为幅度离散信号,使用8bit二进制数编码,首先判断量化信号
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 模拟 信号 数字化 传输 系统 设计