li343 发表于 2007-8-29 08:29

几种典型信号的时域波形及统计特征分析

本帖最后由 牛小贱 于 2014-3-27 21:30 编辑

几种典型信号(以方波、正弦波,随机信号、随机+正弦信号为例)的时域波形及统计特征分析

一、内容及实现步骤


1.用Matlab软件产生典型信号的时域波形图,并通过其图形命令输出。2.对各种典型信号的时域波形图进行统计特征分析,输出结果。
3.对四种典型信号进行自相关分析


二、源程序

%*************************************************************************%
%                  信号时域波形及统计特征分析                           %
%*************************************************************************%
%*************************************************************************%
%***************1.方波***************%
%(1).时域波形
t=0:0.01:10;
t=t(1:1000);
y=square(pi*t);
y=y(1:1000);
figure(1);
subplot(221)
plot(t,y);%做时域波形
axis();%定义坐标轴范围
title('方波时域波形图');
xlabel('t');%定义坐标轴标题
ylabel('y');
grid;%(2).直方图
tt=-1.5:0.01:1.5;
figure(2);
subplot(221)
hist(y,tt);
xlabel('y');ylabel('统计数目N');title('方波直方图')
grid;%(3).求最值,均值,均方值,方差和均方差
fprintf('该方波的最大值为: %g ;\n',max(y));
fprintf('         最小值为: %g ;\n',min(y));
fprintf('             均值为: %g ;\n',mean(y));
fprintf('         均方值为: %g ;\n',mean(y.*y));
a=y-mean(y);
b=mean(a.*a);
fprintf('             方差为: %g ;\n',b);
fprintf('         均方差为: %g ;\n',sqrt(b));%(4).自相关分析
=xcorr(y,'unbiased');%求自相关函数
figure(3);
subplot(411);
plot(lags(99:1901),c(99:1901));%作自相关波形
xlabel('t');
ylabel('自相关函数值Rx(t)');
title('方波自相关分析');
grid;%***************2.正弦波***************%
%(1).时域波形
t=0:pi/500:4*pi;
t=t(1:2000);%采样点2000个
y=sin(t);
y=y(1:2000);
figure(1)
subplot(222)
plot(t,y);
axis();
title('正弦时域波形图');
xlabel('t');
ylabel('y');
grid;%(2).直方图
tt=-1:0.05:1;
figure(2);
subplot(222)
hist(y,tt);
xlabel('y');
ylabel('统计数目N');
title('正弦波直方图')
grid;%(3).求最值,均值,均方值,方差和均方差
fprintf('该正弦波的最大值为: %g ;\n',max(y));
fprintf('          最小值为: %g ;\n',min(y));
fprintf('            均值为: %g ;\n',mean(y));
fprintf('          均方值为: %g ;\n',mean(y.*y));
a=y-mean(y);
b=mean(a.*a);
fprintf('            方差为: %g ;\n',b);
fprintf('          均方差为: %g ;\n',sqrt(b));%(4).自相关分析
=xcorr(y,'unbiased');%求自相关函数
figure(3);
subplot(412)
plot(lags(80:3919),c(80:3919));%作自相关波形
xlabel('t');
ylabel('自相关函数值Rx(t)');
title('正弦波自相关分析');
grid;%***************3.随机信号***************%
%(1).时域波形
t=0:pi/20:4*pi;
t=t(1:80);%采样点80个
y=rand(1,80);
figure(1);
subplot(223);
stem(t,y);
axis()
title('随机信号时域波形图');
xlabel('t');
ylabel('y');
grid;%(2).直方图
tt=0:0.05:1;
figure(2);
subplot(223)
hist(y,tt);
xlabel('y');ylabel('统计数目N');title('随机信号直方图')
grid;%(3).求最值,均值,均方值,方差和均方差
fprintf('该随机信号的最大值为: %g ;\n',max(y));
fprintf('            最小值为: %g ;\n',min(y));
fprintf('            均值为: %g ;\n',mean(y));
fprintf('            均方值为: %g ;\n',mean(y.*y));
a=y-mean(y);
b=mean(a.*a);
fprintf('            方差为: %g ;\n',b);
fprintf('            均方差为: %g ;\n',sqrt(b));%(4).自相关分析
=xcorr(y,'unbiased');%求自相关函数
figure(3);
subplot(413);
plot(lags,c);%作自相关波形
xlabel('t');
ylabel('自相关函数值Rx(t)');
title('随机信号自相关分析');
grid;%***************4.随机+正弦***************%
%(1).时域波形
t=0:pi/100:4*pi;
t=t(1:400);%采样点400个
y=sin(t)+rand(1,400);
y=y(1:400);
figure(1);
subplot(224)
plot(t,y);%做时域波形
axis();
title('随机+正弦时域波形图');
xlabel('t');
ylabel('y');
grid;%(2).作直方图
tt=-1:0.05:2;
figure(2);
subplot(224);
hist(y,tt);
xlabel('y');ylabel('统计数目N');title('随机+正弦信号 ')
grid on;%(3).求最值,均值,均方值,方差和均方差
fprintf('该随机+正弦信号的最大值为: %g ;\n',max(y));
fprintf('               最小值为: %g ;\n',min(y));
fprintf('                   均值为: %g ;\n',mean(y));
fprintf('               均方值为: %g ;\n',mean(y.*y));
a=y-mean(y);
b=mean(a.*a);
fprintf('                   方差为: %g ;\n',b);
fprintf('               均方差为: %g ;\n',sqrt(b));%(4).自相关分析
=xcorr(y,'unbiased');%求自相关函数
figure(3);
subplot(414);
plot(lags,c);%作自相关波形
xlabel('t');
ylabel('自相关函数值Rx(t)');
title('随机+正弦自相关分析');
grid;









eight 发表于 2007-8-29 19:16

本帖最后由 ChaChing 于 2010-9-1 22:02 编辑

辛苦了,不过这些基本上论坛都有,只不过可能没有收集起来而已

caichengtao 发表于 2007-9-2 20:18

感谢楼主!

hhtnwpu 发表于 2010-10-21 00:35

学习一下,楼主辛苦!

wys755 发表于 2010-10-24 15:04

{:{03}:}楼主辛苦

yanhaoguo 发表于 2010-10-26 16:14

基础知识普及,楼主整理的不错

hhtnwpu 发表于 2010-11-9 19:53

谢谢楼主

shenguang6 发表于 2011-1-11 13:32

各位前辈,刚刚开始学MATLAB,上面的程序在我的6.5版本中怎么老是运行错误    "??? Undefined function or variable 'xcorr'."

当我删除以下几段后就可以了,不知是什么原因,还请各位给个提示,谢谢了!
   "%(4).自相关分析
         =xcorr(y,'unbiased');%求自相关函数
         figure(3);
      subplot(414);
      plot(lags,c);%作自相关波形
      xlabel('t');
      ylabel('自相关函数值Rx(t)');
      title('随机+正弦自相关分析');
      grid;"

Happy99 发表于 2011-1-11 14:24

回复 8 # shenguang6 的帖子

使用下式检查下
which xcorr -all

shenguang6 发表于 2011-1-11 16:12

谢谢Happy99 ,

检查了,结果提示如下:
----\signal\xcorr.m Has no license available

上面的提示是表示我的软件信息不全么?

ChaChing 发表于 2011-1-11 20:50

shenguang6 发表于 2011-1-11 16:12 static/image/common/back.gif
谢谢Happy99 ,

检查了,结果提示如下:


license有问题!?

shenguang6 发表于 2011-1-12 08:15

本帖最后由 shenguang6 于 2011-1-12 08:16 编辑

回复 11 # ChaChing 的帖子

回复:
      谢谢Happy99与ChaChing对我新人的关心和帮助,现在好了,但是我并不知道"为什么刚开始不行,现在却好了",难道是我打开了一次XCORR()文件?

散漫男人 发表于 2011-4-16 13:22

{:{36}:}楼主加油~

hux0730 发表于 2012-8-4 15:07

适合入门者学习,谢谢lz

nishoulong 发表于 2012-11-20 22:45

谢谢楼主,很经典啊
页: [1] 2
查看完整版本: 几种典型信号的时域波形及统计特征分析