zoukankan      html  css  js  c++  java
  • 幅度调制(AM调制、DSB(双边带)调制、SSB、VSB)

    幅度调制(线性调制)是由调制信号去控制高频载波的幅度,使之调制信号的频谱线性变化。

    载波信号:$ c(t) = Acosomega_ct $,基带信号为m(t),则已调信号为:(设基带信号m(t)的频谱为$M(omega)$)

    $$ s_m(t)=Am(t)cosomega_ct $$

    $$ S_m(omega)= frac{A}{2}[M(omega + omega_c) + M(omega - omega_c) ] $$

    可以看到,幅度调制就是把基带信号的频谱搬移到$omega_c$处,再乘以1/2 。是线性变换。


    AM调制

    $$s_{AM}(t) =[A_0+m(t)]cosomega_ct$$

    $$ S_{AM}=pi A_0 [ delta(omega + omega_c) + delta(omega - omega_c) ] + frac{1}{2}[M(omega + omega_c) + M(omega - omega_c) ] $$

    为使用包络检波的方式进行解调,要求 $|m(t)|<=A_0$

    clear all;
    %% AM调制
    fs = 800; % 采样速率,单位kHz
    dt=1/fs;  % 采样时间间隔,单位ms
    T = 200;  % 采样的总时间。频谱分辨率(df=1/T)。
    t = 0 : dt : T-dt;
    fm = 1; % 调制信号的频率,单位kHz
    fc = 10; % 载波信号的频率,单位kHz
    m = cos(2*pi*fm*t); % 调制信号
    A = 3; %直流信号
    s = (m+A).*cos(2*pi*fc*t); %已调信号
    [f,sf] = T2F(t,s);
    figure(1)
    plot(t,s);
    axis([0,2,-4,4]);
    figure(2)
    plot(f,abs(sf));
    axis([-15,15,0,max(abs(sf))]);

    DSB调制$s_{DSB}(t) =m(t)cosomega_ct$  $ S_{DSB}(omega)=frac{1}{2}[M(omega + omega_c) + M(omega - omega_c) ] $,只能用相干解调

    clear all;
    %% DSB调制
    % DSB(双边带)只需将调制信号m(t)与载波信号cos(wt)直接相乘即可
    dt=1/800;
    T = 200;  % 采样的总时间。频谱分辨率(df=1/T)。
    t = 0 : dt : T-dt;
    fm = 2; % 调制信号的频率,单位kHz
    fc = 20; % 载波信号的频率,单位kHz
    m = cos(2*pi*fm*t); % 调制信号
    s = m.*cos(2*pi*fc*t); %DSB已调信号
    [f,sf] = T2F(t,s);
    figure(1)
    plot(t,s);
    axis([0,1,-1,1]);
    figure(2)
    plot(f,abs(sf));
    axis([-30,30,0,55]);

    其中的函数T2F是信号的傅里叶变换

    %% 函数  计算信号的傅里叶变换
    function[f, sf] = T2F(t,st) % t为时域采样点;st为采样的时域信号
    dt = t(2) -t(1);
    % T = t(end);
    T = t(end)-t(1)+dt;
    df = 1/T;
    N = length(st);
    f = -N/2*df : df: N/2*df - df;
    sf = fft(st);
    sf = T/N * fftshift(sf);
    end

    还有F2T傅里叶反变换

    %% 计算信号频谱 sf 的傅里叶反变换
    function [ t, st ] = F2T( f, sf )
    df = f(2)-f(1);
    Fmx = f(end)-f(1)+df;
    dt = 1/Fmx;
    N = length(sf);
    T = dt * N;
    t = 0 : dt : T-dt; % 或 t = -T/2 : dt : T/2-dt;
    sff = fftshift(sf);
    st = Fmx * ifft(sff);
    end
    

      

    常记溪亭日暮,沉醉不知归路。兴尽晚回舟,误入藕花深处。争渡,争渡,惊起一滩鸥鹭。

    昨夜雨疏风骤,浓睡不消残酒。试问卷帘人,却道海棠依旧。知否?知否?应是绿肥红瘦。
  • 相关阅读:
    使用ajax和window.history.pushState无刷新改变页面内容和地址栏URL
    URL中“#” “?” &“”号的作用
    JavaScript中事件捕获(Event capturing)-------------->由外向内,事件冒泡(Event bubblin)---------->由内向外
    单页面应用程序案例
    【344】Jupyter relevant problems
    【343】MathJax、LaTex、Mathml 数学公式
    【342】Linear Regression by Python
    【341】Numpy 相关应用
    【340】GIS related knowledge
    java中通过反射获取方法并且调用(getMethod和invoke深入)实践
  • 原文地址:https://www.cnblogs.com/htj10/p/9771836.html
Copyright © 2011-2022 走看看