信号分析笔记2(信号函数与标准信号)

本篇为数字信号分析理论与实践(基于matlab)–华中科技大学,第二单元:信号函数与标准信号。主要包括三部分:常用的信号函数、用信号函数生成标准信号、应用实践(信号发生器和电子琴设计)


信号函数

一、什么是信号发生器?

信号发生器是一种产生电测信号的仪器,按信号波形或函数可分为正弦波信号、方波信号、三角波信号、脉冲信号和随机噪声信号等。
在这里插入图片描述

二、常用信号函数及其生成

1.正弦波
正弦波因信号波形是数学上的正弦曲线而得名。正弦波是一种单一频率成分的基本信号,在后续信号的频谱分析理论中将会学到,任何复杂信号都可以看成是一组不同频率、幅值、相位的正弦波信号的组合

y ( t ) = A sin ⁡ ( 2 π f t + φ ) y(t)=A\sin(2\pi ft+\varphi) y(t)=Asin(2πft+φ) y ( t ) = A sin ⁡ ( 2 π f t + φ ) y(t)=A\sin(2\pi ft+\varphi) yt=Asin2πft+φ
A:幅值(y轴上的高度),f:频率 (震荡的快慢 ), φ \varphi φ :正弦波的初相位, T:周期

在这里插入图片描述

在数字信号处理中,连续的正弦波函数必须将其离散化。
正弦波的离散采样公式如下 :
y ( n Δ t ) = A sin ⁡ ( 2 π f n Δ t + φ ) F s = 1 / Δ t n = 0 , 1 , 2 , . . . . . . , N \begin{aligned} &y(n\Delta t)=A\sin(2\pi fn\Delta t+\varphi) \\ &Fs=1/\Delta t \\ &n=0,1,2,......,N \end{aligned} y(nΔt)=Asin(2πfnΔt+φ)Fs=1/Δtn=0,1,2,......,N
t = n Δ t t=n\Delta t t=nΔt, Δ t \Delta t Δt为采样间隔

C语言样例如下

Fs=11025;                           
dt=1/5120;                           
T=1;                    
N=T/dt;                    
for(i=0;i<N;i++)          
{
  y[i]=10*sin(2*3.14*50*(i*dt))+60; y[i]=10*sin(2*3.14*50*(i*dt))+60;   
}

matlab样例如下

Fs=11025; Fs=11025;          
a=10; a=10;          
f=50; f=50;          
q=60; q=60;          
T=1; T=1;           
dt=1.0/Fs; dt=1.0/Fs;           
N=T/dt; N=T/dt;           
t=linspace(0,T,N);     //生成在0到T的N个数    
y=a*sin(2*3.14*f*t+q); //求出每一个t的y值    
plot(t,y); //绘图 

c和matlab区别在于: matlab支持数组运算,可以用 linspace函数

2.方波
正半周期为A,负半周期为-A
y ( t ) = { = A 0 > t ≥ T / 2 = − A − T / 2 > t ≥ 0 y(t)=\begin{cases}=\text{A}\quad0>t\geq T/2\\[2ex]=-A\quad-T/2>t\geq0\end{cases} y(t)= =A0>tT/2=AT/2>t0
在这里插入图片描述

离散采样公式:
y ( n Δ t ) = . . . . . . F s = 1 / Δ t , n = 0 , 1 , 2 , . . . . . . , N y(n\Delta t)=......\\Fs=1/\Delta t,n=0,1,2,......,N y(nΔt)=......Fs=1/Δt,n=0,1,2,......,N

matlab生成方波信号

x= square(t)
x= square(t,duty)        //duty可调节 ,高电平和低电平占空格的比例

square(2*pi*4*t);          duty占空比=50%(默认)   频率=4 HZ
square(2*pi*4*t,75);       占空比=75%        频率=4 HZ

3.三角波
前半周期单调递减,后半周期单调递增
y ( t ) = A − 2 A ∗ 2 t / T 0 > t > T / 2 y ( t ) = − A + 2 A ∗ 2 ( t − T / 2 ) / T T / 2 < t < T y(t)=A-2A^*2t/T0>t>T/2\\y(t)=-A+2A^*2(t-T/2)/TT/2<t<T y(t)=A2A2t/T0>t>T/2y(t)=A+2A2(tT/2)/TT/2<t<T
在这里插入图片描述
4.锯齿波
y ( t ) = − A + 2 A ∗ t / T 0 > t > T y(t)=-A+2A^*t/T\quad0>t>T y(t)=A+2At/T0>t>T
在这里插入图片描述
matlab中三角波和锯齿波使用的同一个函数

x=sawtooth(t)
x=sawtooth(t,width)

x=sawtooth(2*pi*3*t);//不带width参数,为锯齿波
x=sawtooth(2*pi*3*t,1/2);//三角波
x=sawtooth(2*pi*3*t,0);//width为0,得到一个反方向的锯齿波

5.噪声信号
白噪声:x=randn(1,n) //符合高斯分布,取0值概论最高
在这里插入图片描述

均匀噪声:x=rand(1,n) // 范围内出现的概率一样
在这里插入图片描述

6.其他信号
在这里插入图片描述
对脉冲信号进行积分可以得到阶跃信号,对阶跃信号进行积分可以得到斜坡信号,对斜坡信号进行积分可以得到加速度信号,

%脉冲信号
t=linspace  (0,1,101);
y=[zeros(1,50),1,zeros(1,50)];
plot(t,y);

阶跃
t=linspace(0,1,101);
y=[zeros(1,50),ones(1,51)];
plot(t,y);
ylim([0 1.25])

加速度
y=linspace(0,10,101);plot(y);

复合信号

Fs=500;    
T=1;    
dt=1.0/Fs;    
N=T/dt;    
t=linspace(0,TN);    

y1=10*sin(2*3.14*5*t);  // 正弦波  
subplot(3,1,1);plot(t,y1);   
y2=randn(l,N);          //白噪声  
subplot(3,1,2);plot(t,y2);   
yyl+y2;                  
subplot(3,1,3);plot(t,y);   // 复合信号

三、信号发生器设计

在这里插入图片描述

应用实践

正弦波:
1.数字电子琴
A sin ⁡ ( 2 π f t + φ ) → y ( n ) → D / A → 电子琴 A\sin(2\pi ft+\varphi)→y(n)→D/A→电子琴 Asin(2πft+φ)y(n)D/A电子琴
按下不同的键,生成不同的频率, 频率按音阶变化,即可以产生不同的声音
在这里插入图片描述
2.DTMF命令
DTMF双音多频信号是电话系统中电话机与交换机之间的一种用户信令,通常用于发送被叫号码。
在这里插入图片描述
例如按下1号键

Fs =44100; 
dt=1.0/Fs; 
T =0.5; N=T/dt;
t=[0:N-1]/N;
x1 =0.3*sin(2*pi*1209*t);
x2 =0.3*sin(2*pi*697*t);
x=x1+x2;
plot(t,x,'b','LineWidth',1.5);
axis([0, 0.01, -0.5,0.5]);
grid on;
wavplay(x,Fs);         //y=sin(2*3.14*F1*t)+sin(2*3.14*F2*t)

3.摩尔电码

  • 10
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值