1、从采集到的女声和男声信号中,虽然不太明显,但我们还是能够看到一点男女生声音频率的差别:女声的频率比男声高一点。2信号的抽样 频率为f0 Hz的正弦信号可表示为按抽样频率fsam=1/T对x(t)抽样可得离散正弦序列xk在下面的实验中,取抽样频率fsam=8kHz。(1)对频率为2kHz, 2.2 kHz, 2.4 kHz和 2.6 kHz正弦信号抽样1 秒钟,利用MATLAB函数 sound(x, fsam)播放这四个不同频率的正弦信号。(2)对频率为5.4 kHz, 5.6kHz, 5.8 kHz和 6.0kHz正弦信号抽样1 秒钟,利用MATLAB函数 sound(x, fsam)播放这四
2、个不同频率的正弦信号。(3)比较(1)和(2)的实验结果,解释所出现的现象。【题目分析】【信号抽样过程中频谱变化的规律】 仿真程序 ;f1=2000;fsam=8000;k=0:1:8000;x1=sin(2*pi*k*f1/fsam);sound(x1, fsam);f2=2200;x2=sin(2*pi*k*f2/fsam);sound(x2, fsam);f3=2400;x3=sin(2*pi*k*f3/fsam);sound(x3, fsam);f4=2600;x4=sin(2*pi*k*f4/fsam);sound(x4, fsam);f5=5400;x5=sin(2*pi*k*f5
3、/fsam);sound(x5, fsam);f6=5600;x6=sin(2*pi*k*f6/fsam);sound(x6, fsam);f7=5800;x7=sin(2*pi*k*f7/fsam);sound(x7, fsam);f8=6000;x8=sin(2*pi*k*f8/fsam);sound(x8, fsam);分析:改变频率的值,听到的正弦信号的声音会随之改变,频率在2kHz附近,频率越高,声音越细越尖,7kHz附近也是如此,但是7kHz附近的声音明显比2kHz的声音低沉。3连续时间信号Fourier变换的数值近似计算 计算连续信号频谱是对信号和系统进行频域分析的基础,由于实际
4、信号大多无简单的解析表达式,所以要用数值方法进行近似计算。本题要求对频谱近似计算中误差的原因进行初步的分析,希望能在计算实际信号频谱的近似计算中起一定的指导作用。 若信号x(t)的非零值在区间,则可用下面提供的函数ctft1或ctft2近似计算其频谱。函数ctft的调用形式为X,f=ctft1(x,fsam,N)X,f=ctft2(x,fsam,N)其中调用变量x 存放信号x(t)的抽样值,fsam表示对连续信号x(t)的抽样频率(Hz),N表示用DFT进行近似计算时DFT 的点数,为了能高效的进行计算,N最好取2的整数次幂,如512, 1024等。返回变量X是计算出的信号频谱的抽样值,f(单
5、位Hz)表示对应的频率抽样点。返回变量X一般是复数,可用函数abs(X)计算出幅度谱,函数angle(X) 计算出相位谱。(1)阅读程序ctft2,叙述该程序的基本原理。该程序中有一处需要产生一个大的2维矩阵,指出该行程序,并评价该方法的优缺点。(2)取抽样频率fsam=100Hz, 信号抽样长度N=1024, 分别用两个子程序近似计算信号的频谱,比较两种方法的计算时间和误差;(可用tic, toc 计算程序运行时间)(3)若将信号的时域有效宽度定义为其中表示信号在时域的最大值。试分析时域有效宽度对近似计算的影响。给出一个由信号时域有效宽度估计近似计算中所需信号长度的经验公式。(4)定义信号频
6、域有效宽度为表示信号在频域的最大值。给出一个由信号频域有效宽度估计近似计算中所需抽样频率(5)用计算机录分别一段男生和女生的语音信号,计算其频谱并比较其特点。(6)讨论:计算误差产生的主要原因?如果不知信号的解析表达式,如何分析计算误差?%近似计算连续信号频谱的函数function X,f=ctft1(x,Fs,N)X=fftshift(fft(x,N)/Fs;f=-Fs/2+(0:N-1)*Fs/N;function X,f=ctft2(x,Fs,N)tk=(0:N-1)/Fs;% 时域抽样点dF=Fs/N; %频域抽样间隔fm=(0:N/2)*dF; %频域抽样点X=x*exp(-j*2*
7、pi*tk*fm)/Fs;% 近似计算信号频谱f=-fliplr(fm(2:end) fm; % 增添负频率点X=-conj(fliplr(X(2:end) X;% 增添频率点对应的频谱1 该程序先计算出x(t)的频谱,输入频域抽样的抽样限制,运用函数ctft2。程序: X=-conj(fliplr(X(2:的作用是产生一个频率点和频率点对应的频谱的二维矩阵。 【仿真结果】【仿真程序】)ctft1.m function X,f=ctft1(x,Fs,N) f=-Fs/2+(0:Untiled2.m k=0:0.01:15; x=exp(-1*k); X,f=ctft1(x,100,1024);
8、figure(1);subplot(2,1,1); plot (f,abs(X); title(abs(X) plot (f,angle(X);angle(X)P=1./(1+j*f); Untiled3.m plot(f,abs(P); xlabel(f (Hz) plot(f,angle(P); figure(3); plot(f,abs(P)-abs(X);幅度误差 axis(-5,5,-0.01,0.02) subplot(2,1,2); plot(f,angle(P)-angle(X);相位误差 (4)x(t)频域有效宽度为f女声信号分析:x1,fs,bits = wavread(
9、Pretty Boy.wavX,f=ctft1(x1,100,1024);subplot(3,1,1);plot (f,abs(X);title(幅度subplot(3,1,2);plot (f,angle(X);相位subplot(3,1,3);plot(f,X);频谱);男声信号分析:subplot(3,1,3); 女声 男声【结果分析】女生的声音频谱明显要高于男生。【自主学习内容】自主学习函数ctft的用法【阅读文献】陈后金,胡健,薛健.信号与系统(第二版)M.北京:清华大学出版社,北京交通大学出版社,2005.【发现问题】 (专题研讨或相关知识点学习中发现的问题):【问题探究】4幅度调
10、制和连续信号的Fourier变换 本题研究莫尔斯码的幅度调制与解调。本题中信号的形式为其中信号x(t)由文件ctftmod.mat定义(该文件在硬盘上),可用命令Load ctftmod 将文件ctftmod.mat定义的变量装入系统内存。运行命令Load ctftmod后,装入系统的变量有af bf dash dot f1 f2 t xbf af: 定义了一个连续系统H(s)的分子多项式和分母多项式。可利用freqs(bf,af,w)求出该系统的频率响应,也可用sys=tf(bf,af)得到系统的模型,从而用lsim求出信号通过该系统的响应。dash dot: 给出了莫尔斯码中的基本信号da
11、sh和dot的波形f1 f2: 载波频率t: 信号x(t)的抽样点x: 信号x(t)的在抽样点上的值 信号x(t)含有一段简单的消息。Agend 007的最后一句话是The future of technology lies in 还未说出最后一个字,Agend 007就昏倒了。你(Agend 008)目前的任务就是要破解Agend 007的最后一个字。该字的信息包含在信号x(t)中。信号x(t)具有式(1)的形式。式中的调制频率分别由变量f1和f2给出,信号m1(t),m2(t)和m3(t)对应于字母表中的单个字母,这个字母表已用国际莫尔斯码进行编码,如下表所示:A - H O - - -V
12、 -B -I P -W -C -J - - -Q - -X -D -K -R Y -E L S Z -F M - -T -G - -N -U (1) 字母B可用莫尔斯码表示为b=dash dot dot dot,画出字母B莫尔斯码波形;(2) 用freqs(bf,af,w)画出由bf和af定义的系统的幅度响应;(3) 利用lsim求出信号dash通过由sys=tf(bf,af)定义的系统响应,解释你所获得的结果;(4)用解析法推导出下列信号的Fourier变换(5)利用(4)中的结果,设计一个从x(t)中提取信号m1(t)的方案,画出m1(t)的波形并确定其所代表的字母;(6)对信号m2(t)
13、和m3(t)重复(5)。请问Agent 008(1)程序如下: clear load ctftmod whos Name Size Bytes Class Attributes af 1x6 48 double 这个是我们首先把那个在文件里的 bf 1x6 48 double 那个ctftmod.mat文件复制到 你 dash 1x2000 16000 double 自己的电脑里面的matlab文件里面 dot 1x2000 16000 double 然后你就可以在软件中调用 f1 1x1 8 double load ctftmod了,结果如图。 f2 1x1 8 double f1和f2是载
14、波频率,f1=200hz. t 1x8000 64000 double f2=400hz,af和bf 系统频率相应 x 1x8000 64000 double 对应的分子分母的系数,plot(dash)结果如下:plot(dot)结果为:b=dash dot dot dot; plot(b)结果为(2)freqs(bf,af)结果为:(3)ydash=lsim(bf,af,dash,t(1:length(dash);ydot=lsim(bf,af,dot,t(1:length(dot);plot(t(1:length(dash),dash,t(1:length(dash),ydash,-leg
15、end(dash,ydash)length(dot),dot,t(1:length(dot),ydot,dot)结果为:上下从波形上看输入和输出在幅度上有一定的差别,但不大;并且输出在时间轴上也有一定的时移,并且可以看出都是低频的信号,且都在低通滤波器通带范围之内。角度差180。005(5),m1=lsim(bf,af,x.*cos(2*pi*f1*t),t);plot(t,m1);这个是提取的程序,结果为:(6)同理,可以将其他的程序函数提出来!改变的就只是频率而已,和三角函数而已了!M1=lsim(bf,af,x.*sin(2*pi*f1*t),t);M1=lsim(bf,af,x.*cos(2*pi*f2*t),t);M1=lsim(bf,af,x.*sin(2*pi*f2*t),t);【方案设计】
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2