1.FM的模拟调制过程
FM信号是一种频率调制信号,其携带的信息保存在其信号的频率中,通过改变载波的频率来实现基带数据的传输。
其函数表达式如下:
\[s(t) = A*cos(w_c*t + K_f*\int m(\tau) d\tau)\]
其中:
\(A\):表示载波幅度。
\(m(\tau)\):表示基带信号。
\(w_c\):表示载波信号角度增量。
\(K_f`\):是调频灵敏度。
正交调制法公式如下:
\[I(t) = cos(K_f*\int m(\tau) d\tau) \\Q(t) = sin(K_f*\int m(\tau) d\tau) \\s(t) = A*(I(t)*cos(w_c*t) - Q(t)*sin(w_c*t))\]
2.FM的数字正交解调
原理:
<img > 对于I路,其中\(\varphi\)表示调制载波与解调载波的相位差:
\[\begin{array}{flalign}I(n) & = LPF(s(n)*cos(w_c*n + \varphi)) \\ & = \frac{cos(K_f*\sum m(n))*cos(\varphi) + sin(K_f*\sum m(n))*sin(\varphi)}{2} \\ & = \frac{1}{2}*cos(K_f*\sum m(n) - \varphi)\end{array}\]
对于Q路:
\[\begin{array}{flalign}Q(n) & = LPF(s(n)*sin(w_c*n + \varphi)) \\ & = \frac{cos(K_f*\sum m(n))*sin(\varphi) - sin(K_f*\sum m(n))*cos(\varphi)}{2} \\ & = \frac{1}{2}*sin(K_f*\sum m(n) - \varphi)\end{array}\]
同时:
\[\begin{array}{flalign} &\ \frac{Q(n)}{I(n)} = \frac{sin(K_f*\sum m(n)- \varphi)}{cos(K_f*\sum m(n)- \varphi)} = tan(K_f*\sum m(n) - \varphi) \\&\ SUM(n) = arctan(\frac{Q(n)}{I(n)}) = K_f*\sum m(n) - \varphi\space\space\space\space\space\space\space\space\space\space\space\space\space\space\space\space\space\space\space\space (\frac{Q(n)}{I(n)}) \in (-\pi/2\space\space\space\space\pi/2) \\&\ M(n) = SUM(n) - SUM(n-1) = K_f* m(n) \\\end{array}\]
注:上式推算中使用了arctan函数,其中arctan的输入范围\((-\pi/2\space\space\space\space\pi/2)\)。当范围超过将计算错误。所以将使用MATLAB的atan2函数进行计算。
\[\begin{array}{equation} SUM(n) = atan2(Q(n),I(n)) = K_f*\sum m(n) - \varphi \\ M(n) = SUM(n) - SUM(n-1) = K_f* m(n)\end{array}\]
3.MATLAB仿真
仿真代码:
[code]fs = 20000;%采样率l = 1E3;%基带信号点数f = 100;%基带信号f_c = 2000;%载波信号t = 0:1/fs l-1)/fs;mt = cos(2*pi*f*t);kf = fs * 0.4;%% IQ信号I = cos(kf*cumtrapz(t,mt));Q = sin(kf*cumtrapz(t,mt));%% 调制数据mod_data = I.*cos(2*pi*f_c*t) - Q.*sin(2*pi*f_c*t);%% 解调mmm = atan2(Q,I);demod = zeros(1,length(mmm));for i = 2:1:length(demod) demod(i) = mmm(i) - mmm(i-1); if(demod(i) >= pi) demod(i) = demod(i) - pi*2; elseif(demod(i) |