震荡信号Simulink仿真

 1. simulink仿真设计

    震荡信号本质是调制信号,可以表示为:

    u(t)=A*(1+m*cos(Ωt+θ))*cos(ωt+φ)=A*cos (ωt+φ)+ A*m*cos(Ωt+θ)*cos(ωt+φ)

    使用simulink仿真如下:

 

 

2. 时域信号

时域信号输入设计为信号调制模型。

u(t)=A*(1+m*cos(Ωt+θ))*cos(ωt+φ)=A*cos (ωt+φ)+ A*m*cos(Ωt+θ)*cos(ωt+φ)

输入信号1: m*cos(Ωt+θ) = 0.5*cos(2*pi*5*t), 调制深度m=0.5, 频率f=5Hz。

 

输入信号2: A*cos(Ωt+θ) = 100*cos(2*pi*100*t), 幅值A=100, 频率f=100Hz。

 

时域信号:

 

图中,蓝色为相乘后的信号,最大幅度为mA=50, 粉色为叠加后的信号,可见100Hz的信号被5Hz信号调制,信号包络为5Hz。

 

3. 频域信号

对叠加后的信号进行fft变换。

FFT输出为:

 

中心平率100Hz,幅值100, 左右各有一个侧带波,信号频率为100±5Hz,幅值为25.

为什么会出现这个情况?

u(t)=A*(1+m*cos(Ωt+θ))*cos(ωt+φ)=A*cos (ωt+φ)+ A*m*cos(Ωt+θ)*cos(ωt+φ)

积化和差公式化简后:

u(t)=A*cos(ωt+φ)+0.5*A*m*cos((ω+Ω)t+φ+θ)+0.5*A*m*cos((ω-Ω)t+φ-θ).

如上图,幅值为25的侧带波来源于0.5mA=0.5*0.5*100 = 25,频率是ω+Ω和ω-Ω。

 

4 . 信号解调

震荡信号会引起测量系统失效,为什么如此呢?

简单的说,信号被调制之后,原基频信号就会以较低频率的震荡信号为包络发生震荡,而测量系统的记录时间长度有限,那么就会造成记录时间段内的波形重建之后,依然不够2倍包络波周期,从时域波形来看,就是测量系统每次计算的数据只是较长包络的一小段。

所以需要对信号进行解调,平方解调是分析震荡信号的有效手段。对叠加后的信号进行低通滤波,排除谐波干扰,然后进行FFT计算。解析过程就是对信号u(t)进行平方,经过简单的积化和差计算,可得平方后调制波Ω出现在2倍频位置,即会出现mA2cos(Ωt+θ)因式。

 

频域图如下:

 

震荡信号在5Hz出,幅度为mA2=0.5*100*100 = 5000。

而200Hz处应该为基波信号,但幅值变得很小是由于中间的滤波器缘故。

 

滤波器设计为带通,1Hz-100Hz, 20阶IIR滤波器。

 

 完成仿真后,就可以从FDA Tool生成滤波器系数,然后用C在MCU上实现上述FFT计算和滤波过程,最终解析出震荡信号特征。

 

posted on 2017-04-06 21:12  啊哈彭  阅读(2720)  评论(1编辑  收藏  举报

导航