728x90


 1. 풀이


dsb-sc(double-sideband suppressed-carrier transmission) 변조는 message signal에 carrier(cos(2*pi*fc*t))를 곱하여 만들어준다.


이 변조는 반주기마다 신호가 0이 되는 부분이 발생한다. 이러한 이유 때문에 dsb-sc변조의 경우 실제 복조 과정에서 수신 신호의 수신이 필요하다. 이때, 수신기의 위상 오차에 따라 출력 크기가 변화하게 된다.


위상 오차가 90도에 근접하면 출력신호를 거의 잡을 수 없게 된다. 이러한 단점을 보완하기 윈해 AM변조(dsb-lc, Double sideband Large carrier)가 활용된다.



이러한 dsb-sc의 과정을 코드로 다시 표현하였다.


코드의 과정은 총 4가지로 나뉘어진다.

1. message, carrier signal의 생성

2. modulation

3. spectrum 분석

4. demodulation


일반적으로 검색에서 발견되는 modulation과 demodulation을 제외하고 spectrum 분석이 추가되어있다.

이 과정을 통해 실제 신호의 주파수가 어떻게 구성되어있고, filter를 활용해 어떤 신호를 제거하는지 확인할 수 있을 것이다.


실제 코드를 통한 과정은 아래 소스코드의 주석을 참고.



 2. 소스코드


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
% clear all; close all; clc;
% 기본적인 인자 선언
tmin= 0; tmax = 1; step = (tmax-tmin)/(10^3);
= tmin:step:tmax;
Vm= 20; Vc= 1;
fm = 5; fc= 10^2; fs = 1/step;
 
% 이번 실험에서 쓰이는 값은 다음과 같다.
= Vm*sin(2*pi*fm*t); % Message
= Vc*cos(2*pi*fc*t); % Carrier
= m.*c; % Modulated Wave
 
% Spectrum of Product Modulator output signal
N=length(v);
Z=fftshift(fft(v,N));
f=fs*[-N/2:N/2-1]/N;
 
figure(3);
plot(f,abs(Z));
 
% 변조한 신호를 그래프로 확인
figure(1)
plot(t,v); hold on;
plot(t,m,'r:'); hold on;
plot(t,-m,'r:'); hold off;
 
 
% demodulation과정
= v.*c;       %이 과정에는 carrier를 다시 곱해준다.
 
% 실제 이동된 주파수 스펙트럼을 확인한다.
N=length(v);
Z=fftshift(fft(v,N));
f=fs*[-N/2:N/2-1]/N;
 
figure(4);
plot(f,abs(Z));
 
 
% butter함수와 filter함수를 활용해 저역통과필터를 만들어준다.
[num den] = butter(15/fs/2); 
mr = filter(num,den,v);
 
% 추가적으로 butter함수는 bandpass 등 다양한 필터가 가능하다.
 
% freqz(num, den, v)
 
figure(2)
subplot(2,1,1); plot(t,m);
subplot(2,1,2); plot(t,mr);
cs


 3. 참고


https://www.youtube.com/watch?v=weG5aE6ZAB8

https://kr.mathworks.com/help/signal/ref/butter.html

https://kr.mathworks.com/help/matlab/ref/filter.html




질문이나 지적 있으시면 댓글로 남겨주세요~

도움 되셨으면 하트 꾹!

'---------개인공부-------- > |통신공학실습(matlab)|' 카테고리의 다른 글

[matlab] kalman-filter  (0) 2020.11.22

+ Recent posts