《通信原理课程设计模拟信号数字化PCM编码设计.doc》由会员分享,可在线阅读,更多相关《通信原理课程设计模拟信号数字化PCM编码设计.doc(30页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、通信原理课程设计目 录一、课程设计目的2二、设计任务书2三、进度安排3四、具体要求3五、成绩评定3六、课程设计内容41模拟信号数字化处理41.1基本原理.41.2 对模拟信号抽样.41.3对离散数字信号序列量化.61.4对量化后数字信号进行编码102、仿真程序、程序编制、流程图、仿真结果112.1抽样定理验证112.2量化与编码152.3整个程序设计流程203.PCM 8位编码.233.1误码率分析243.2 A律和U律变换.254.增量调制.274.1.增量调制源代码274.2.增量调制原理图285新的体会.286.参考文献.29一、课程设计目的 本课程是为通信工程专业本科生开设的专业必修课
2、,结合学生的专业方向的理论课程,充分发挥学生的主动性,使学生掌握应用MATLAB或者SYSTEMVIEW等仿真软件建立通信系统,巩固理论课程内容,规范文档的建立,培养学生的创新能力,并能够运用其所学知识进行综合的设计。通信系统原理的课程设计是对通信系统仿真软件、课程学习的综合检验,配合理论课的教学,让学生亲自参加设计、仿真、验证通信系统的一般原理、调制解调原理、信号传输及受噪声影响等方面的知识点。二、设计任务书设计选题:模拟信号数字化PCM编码设计主要内容:1. 模拟信号数字化的处理步骤:抽样、量化、编码2. 模拟信号的抽样过程,理解抽样频率的变化对抽样信号的影响;3. 用MATLAB对PCM
3、编码进行使用A律和律的压缩和扩张进行软件仿真;4. PCM的8位编码C1C2C3C4C5C6C7C85. 仿真实现增量调制的过程和并理解噪声产生的原理。三、进度安排星期一:讲课程设计的内容,安排每一天的具体任务,熟悉软件的编程环境MATLAB/SIMULINK;星期二:查资料,确定课程设计的题目;星期三:确定设计方案,写出设计思想;星期四:编写修改程序,必须有详细的程序注释,得出结果;星期五:写总结报告,检查各位的做的情况,考评设计成绩。上交的材料:包含三样:(课程设计的电子稿、打印稿、程序)四、具体要求1.课程设计的内容独立自主完成,课程设计报告内容完整、格式规范、排版整洁美观;2.设计选用
4、的语言不限,推荐使用MATLAB、C均可,编写出的程序,必须有详细的注释说明;五、成绩评定考核方法:现场验收(占50%),课程设计报告(占50%)。考核内容:学习态度(出勤情况,平时表现等)、方案合理性、程序编制质量、演示效果、设计报告质量。成绩评定:优,良,中,及格,不及格。特别说明:(1)如发现抄袭,按照不及格处理。(2)材料不齐的,考核等级降一级。电子稿件以文件夹的形式上交的文件的命名为:(学号的最后两位+姓名)六、课程设计内容1、模拟信号数字化的处理11基本原理通信系统可以分为模拟和数字通信系统两大类。数字通信系统有很多的优点,应用非常广泛,已经成为现代通信的主要发展趋势。自然界中很多
5、信号都是模拟量,我们要进行数字传输就要将模拟量进行数字化,将模拟信号数字化,处理可以分为抽样,量化,编码,这三个步骤。(1)、下图是模拟信号数字传输的过程原理图:(2)、下图是模拟信号数字化过程:模拟信号源编码量化抽样1.2对模拟信号进行抽样抽样是把时间上连续的模拟信号变成一系列时间上离散的抽样值的过程。抽样定理:设一个频带限制的(0,fH)Hz内的时间连续信号m(t)如果它不少于2fH次/s的速率进行抽样,则m(t)可以由抽样值完全确定。抽样定理指出,由样值序列无失真恢复原信号的条件是fs2fH ,为了满足抽样定理,要求模拟信号的频谱限制在0fH之内(fH为模拟信号的最高频率)。为此,在抽样
6、之前,先设置一个前置低通滤波器,将模拟信号的带宽限制在fH以下,如果前置低通滤波器特性不良或者抽样频率过低都会产生折叠噪声。抽样频率小于2倍频谱最高频率时,信号的频谱有混叠。 抽样频率大于2倍频谱最高频率时,信号的频谱无混叠。取样分为冲激取样和矩形脉冲取样,这里只详细介绍冲激取样的原理和过程,矩形脉冲取样的原理和冲激取样的是一样的,只不过取样函数变成了矩形脉冲序列。数学运算与冲激取样是一样的。冲激取样就是通过冲激函数进行取样。上图左边就是简化的模拟信号转换离散的数字信号的抽样过程,其中f(t)是连续的时间信号,也就是模拟信号,在送到乘法器上与s(t)取样脉冲序列进行乘法运算,事实上取样脉冲序列
7、就是离散的一个个冲激函数(冲激函数如上图右边的图),右边部分的fs(t)就是变成了一个个离散的函数点了。下面给出抽样的数学运算过程。抽样过程的冲激抽样的函数过程: 因此:fs(t)另外要注意的是,采样间隔的周期要足够的小,采样率要做够的大,要不然会出现如下图所示的混叠现象,一帮情况下TsWs=2,Wn2Wm。1.3对离散数字信号序列量化量化就是利用预先规定的有限个电平来表示模拟信号抽样值的过程。时间连续的模拟信号经过抽样后的样值序列虽然在时间上离散,但是在幅度上仍然是连续的,也就是说,抽样值m(kT)可以取到无穷多个值,这个很容易理解的,因为在一个区间里面可以取出无数的不同的数值,这就可以看成
8、是连续的信号,所有这样的信号仍然属于模拟信号范围。因此这就有了对信号进行量化的概念。在通信系统中已经有很多的量化方法了,最常见的就是均匀量化与非均匀量化。均匀量化概念比较早出来。因其有很多的不足之处,很少被使用,这就有了非均匀量化的概念。均匀量化就是把信号的取值范围按照等距离分割,每个量化电平都取中间值(也就是平均值),落在这个区间的所有值都用这个值代替。当信号的变化范围和量化电平被确定后,量化间隔也就被确定。在语言信号数字化通信中,均匀量化有个明显不足之处:量化信噪比随信号的电平的减小而下降。为了克服这个缺点,实际中往往采用非均匀量化。非均匀量化是一种在整个动态范围内量化间隔不相等的量化。它
9、是根据输入信号的概率密度函数来分布量化电平的,以改善量化性能,它的特点是输入小时量阶也小,输入大时,量阶也大。整个范围内信噪比几乎是一样的,缩短了码字长度,提高了编码效率。实际中非均匀量化的方法之一是把输入量化器的信号x先进行压塑处理,再把压缩的信号y进行非均匀量化。压缩器其实就是一个非线性电路,微弱的信号被放大,强的信号被压缩,压缩器的输入输出关系可以这样表示:y=f(x)接受端采用一个与压缩特性相反的扩张器来恢复x。下图就是压缩与扩张的示意图:xy5 BBy通常使用的压缩器中,大多数采用对数压缩,即y=lnx。广泛采用这两种对数压扩特性的是u/A率压扩。律压缩特性压缩规律:压缩特性近似满足
10、下对数规律 律压缩定性分析 =0时:无压缩作用(直线)0时:压缩明显压缩作用-y是均匀的,而x是非均匀的信号越小x也越小A压缩率所谓的 A压缩率就是压缩器具有如下特性:0=2fc,抽样点数目将等于或大于2fc个sdt=1/fs; %频域采样间隔0.002t1=-0.1:sdt:0.1; %以sdt为间隔从-0.1到0.1画图st=cos(2*pi*60*t1); % 离散的抽样函数figure(1); subplot(3,1,1);plot(t,xt);title(原始信号); %画出原始的信号图,以好对比grid on subplot(3,1,2); %画背景stem(t1,st,.); %
11、这里画出来的是抽样后的离散图title(抽样信号);grid on %画背景(3)、抽样结果图1、抽样频率500HZ2、抽样频率1000HZ3、抽样频率100(4)、实验结果分析抽样结果与抽样频率有关,抽样频率越高则抽样间隔越小,抽样的点数越多;相反,当抽样频率越低,则抽样间隔越大,抽样的点数越少。当抽样频率满足fs大于等于2f,则抽样得到的信号没有失真;否则将产生失真。综上所述,验证了抽样定理。2.2量化与编码在抽样以后我们得到了一个个的离散的数字信号序列,但是这个序列并不是我们想要的数字信号序列,因为前面已经说过,这个不是真正的离散数字信号,它只是在时间上是离散的,在幅度上仍然是连续的。所
12、以就要进行下一步操作量化。(1)、量化编码的matlab源代码:%量化过程n=length(st); %取st的长度为nM=max(st);A=(st/M)*2048; %a1(极性码) a2a3a4(段落码)a5a6a7a8 code=zeros(i,8); %产生i*8的零矩阵 for i=1:n %if循环语句 if A(i)=0 code(i,1)=1; %代表正值 else code(i,1)=0; %代表负值end (2)、编码过程源代码 if abs(A(i)=0&abs(A(i)16 code(i,2)=0;code(i,3)=0;code(i,4)=0;step=1;star
13、t=0;elseif 16=abs(A(i)&abs(A(i)32 code(i,2)=0;code(i,3)=0;code(i,4)=1;step=1;start=16;elseif 32=abs(A(i)&abs(A(i)64 code(i,2)=0;code(i,3)=1;code(i,4)=0;step=2;start=32;elseif 64=abs(A(i)&abs(A(i)128 code(i,2)=0;code(i,3)=1;code(i,4)=1;step=4;start=64;elseif 128=abs(A(i)&abs(A(i)256 code(i,2)=1;code(
14、i,3)=0;code(i,4)=0;step=8;start=128;elseif 256=abs(A(i)&abs(A(i)512 code(i,2)=1;code(i,3)=0;code(i,4)=1;step=16;start=256;elseif 512=abs(A(i)&abs(A(i)1024 code(i,2)=1;code(i,3)=1;code(i,4)=0;step=32;start=512;elseif 1024=abs(A(i)&abs(A(i)2048 code(i,2)=1;code(i,3)=1;code(i,4)=1;step=64;start=1024; e
15、ndB=floor(abs(A(i)-start)/step); %段内码编码floor取整(四舍五入) t=dec2bin(B,4)-48; %dec2bin定义将B变为4位2进制码,-48改变格式 code(i,5:8)=t(1:4); %输出段内码endcode=reshape(code,1,8*n); %reshape代表从新塑形codesubplot(3,1,3);stem(code,.);axis(1 64 0 1); title(编码信号);grid on (3)、量化编码结果图以下为前十个编码code = Columns 1 through 13 1 1 1 1 0 1 1 0
16、 1 1 1 1 1 Columns 14 through 26 1 0 1 1 0 0 0 1 0 0 0 1 1 Columns 27 through 39 1 1 1 1 1 0 1 1 1 1 1 0 0 Columns 40 through 52 0 1 1 1 0 1 1 0 1 1 1 0 0 Columns 53 through 65 1 0 0 0 0 1 1 0 0 0 0 1 0 Columns 66 through 78 1 1 1 0 0 1 1 0 1 1 1 1 0 Columns 79 through 91 1 1 0 1 1 1 1 1 1 1 0 1 1 C
17、olumns 92 through 104 1 1 1 1 1 0 1 1 1 1 0 1 0 Columns 105 through 117 0 1 1 1 0 0 0 1 0 1 0 1 1Columns 118 through 130 0 1 1 1 1 0 1 0 1 0 0 1 1 2.3整个程序设计流程图1-4 程序设计大致流程(1)、A律13折线和U律变换%a律13折线 u律15折线%u and A law for quantize,filename:a_u_law.m%u=255 y=ln(1+ux)/ln(1+u)%A=87.6 y=Ax/(1+lnA)(0x1/A) Y=(
18、1+lnAx)/(1+lnA)clear all;close all;dx=0.01;x=0:dx:1;u=255;%u Lawyu=log(1+u*x)/log(1+u);%A LawA=87.6;for i=1:length(x) if x(i) 1/A ya(i)=A*x(i)/(1+log(A); else ya(i)=(1+log(A*x(i)/(1+log(A); endendfigure(1)subplot(2,1,1);plot(x,yu,k.:);title(u Law)xlabel(x);ylabel(y);grid onhold onxxu=0,1/255,3/255,7
19、/255,15/255,31/255,63/255,127/255,1;yyu=0,1/8,2/8,3/8,4/8,5/8,6/8,7/8,1;plot(xxu,yyu,r);stem(xxu,yyu,b-);legend(u律压缩特性,折线近似u律);subplot(2,1,2);plot(x,ya,k.:);title(A Law)xlabel(x);ylabel(y);grid onhold on xxa=0,1/128,1/64,1/32,1/16,1/8,1/4,1/2,1;yya=0,1/8,2/8,3/8,4/8,5/8,6/8,7/8,1;plot(xxa,yya);plot(
20、xxa,yya,r);stem(xxa,yya,o:);legend(A律压缩特性,折线近似A律);(2)、A律13折线和U律变换结果图(3)、图为simulink搭建的PCM编码器框图:图1-5所示测试模型和仿真结果如图所示,其中以Saturation作为限幅器,将输入信号幅度值限制在PCM编码的定义范围内,Relay模块的门限设置为0,其输出既可作为PCM编码出去的最高位极性码。阳值取绝对值后,以Look-Up Table模块进行13折线压缩,并用增益模块将样值范围放大到0127,然后用间距为1的Quantizer进行四舍五入的取整,最后将整数编码为7位二进制序列,作为PCM编码的低7位。
21、3 PCM 8位编码 下面给出由量化编码程序输出的编码序列(由于数据较多,这里只显示前80位数据):code =Columns 1 through 16 1 1 1 1 0 0 0 0 1 1 0 0 1 0 1 0 Columns 17 through 32 0 1 0 1 0 0 0 1 0 1 0 0 1 0 1 1 Columns 33 through 48 1 1 0 0 1 0 0 0 1 1 1 0 0 0 0 0 Columns 49 through 64 1 1 0 1 0 1 1 0 0 1 0 1 0 1 1 0 Columns 65 through 80 0 1 1 1
22、 0 1 0 0 0 1 1 1 1 1 1 03.1误码率分析误码率与信号的信噪比有关,当信噪比很小时,误码率相对来说比较高,不管是通过什么解调,其误码率都是处在一个相同或者相近的位置;当信噪比较高时,误码率就比较小了,而且,不同的解调,所产生的信噪比都是相差比较大的。我们还可以看出非相干解调相同的信噪比下所产生的误码率最高,在相同的 误码率下产生的信噪比也是最大的。PSK解调是这集中解调中稍微比较好的了。3.2 A律13折线变换和U律变换(1)、程序源代码%a律13折线 u律15折线%u and A law for quantize,filename:a_u_law.m%u=255 y=l
23、n(1+ux)/ln(1+u)%A=87.6 y=Ax/(1+lnA)(0x1/A) Y=(1+lnAx)/(1+lnA)clear all;close all;dx=0.01;x=0:dx:1;u=255;%u Lawyu=log(1+u*x)/log(1+u);%A LawA=87.6;for i=1:length(x) if x(i) =0)-1); D(k+1)=e_q(k)+D(k); codeout(k)=(e_q(k)0); end subplot(3,1,1);plot(t,x,-o);axis(0 20*Ts,-2 2);hold on; subplot(3,1,2);sta
24、irs(t,codeout);axis(0 20*Ts,-2 2); Dr(1+length(t)=0; for k=1:length(t) eq(k)=delta*(2*codeout(k)-1); xr(k)=eq(k)+Dr(k); Dr(k+1)=xr(k); end subplot(3,1,3);stairs(t,xr);hold on; subplot(3,1,3);plot(t,x);(2)、增量调制结果5、心得体会为期一周的通信原理课程设计结束了,在紧张的实践中喔收获很多。通过此次课程设计,进一步理解模拟信号数字化PCM编码设计方面的知识。与此同时,在设计过程中也遇到了一些问题
25、,但通过自己思考,和他人讨论以及查阅相关书籍最终解决。在此期间也暴露出对知识的欠缺和经验的不足。在课程设计过程中,不断发现错误,不断改正,并不断总结。在今后社会的发展和学习实践过程中,这将是一笔宝贵的精神财富,在遇到问题和困难时要勤思考,想方设法解决,而不是置之不理。只有这样才能解决问题,增长知识,提高个人能力,并最终成功。在这一周的课程设计中,不仅培养了独立思考、动手操作的能力,在各种其它能力上也都有了提高。更重要的是,我们学会了很多学习的方法。而这是日后最实用的,真的是受益匪浅。要面对社会的挑战,只有不断的学习、实践,再学习、再实践。 回顾起此课程设计,收获的不仅是知识。从理论到实践,可以
26、学到很多很多的东西,不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正提高自己的实际动手能力和独立思考的能力。 6、 参考文献1.通信原理樊昌信 曹丽娜 国防工业出版社2.现代通信系统分析与仿真matlab通信工具箱李建新 刘乃安西安电子科技大学出版社3.数字信号处理教程matlab释义与实现陈怀琛 电子工业出版社 4.现代通信系统使用matlab约翰-G-普罗克斯 西安交通大学出版社5. MATLAB通信工程仿真张德丰 机械工业出版社6.MATLAB/SIMULINK通信系统建模与仿真实例分析邵玉斌 清华大学出版社29